質問編集履歴
3
誤字
test
CHANGED
File without changes
|
test
CHANGED
@@ -18,15 +18,15 @@
|
|
18
18
|
|
19
19
|
### これを使用したいプロジェクトについて
|
20
20
|
|
21
|
-
現実時間と連動したゲームを作成したいと考えているので、『経過時間(ms)をiとおき、要素数100の配列のBox[]があるとした場合』
|
22
|
-
|
23
|
-
今のiの値が40の場合は配列Box[40]を指定し、1ステップ後(1回Updateした後)のiが60だとしたら、Box[41]ではなくBox[60]を指定したいです
|
24
|
-
|
25
|
-
現在作成しているプロジェクトがこのような仕様になっており、ほぼ同じ周期でUpdateされることを前提としているため、4ステップ目の更新のみ340msかかってしまうとコーディングが難しいです
|
26
|
-
|
27
|
-
加えて、void Strt()とvoid Updateの両方でBox[i]を使うため、「初めてUpdateしたときに1秒待ってから処理を始める」は解決策としてはちょっと違うかもしれません、、、
|
28
21
|
|
29
22
|
|
23
|
+
現実時間と連動したゲームを制作しており、「ゲーム開始からの経過時間(ms)をiとした場合」に、ある経過時間になったとき特定の動作をするようなものです(例:開始から100msたったら(i = 100)90度回転、230ms(i = 230)たったら10移動)
|
24
|
+
|
25
|
+
1回Updateをするのに20msかかるため、例えばi = 20でUpdateをすると次のiは40となります。この際、例えば30msのときに特定の動作をするようになっていると、21~39はiに入らないため(i = 20 → i = 40)この命令を飛ばしてしまいます。
|
26
|
+
|
27
|
+
そのため、動作をさせるかどうかの判断を「if i == 30」ではなく「if i == 30 || abs(i - 30 ) <= 10」としています。こうすることで、iが40であっても30で実行するはずだった命令を行えるようにしています。しかし、このコーディングは、updateの間隔が一定であるという前提で組んでいるため4ステップ目の更新のみ340msかかってしまうと、行いたい挙動をプログラムが行ってくれなくなってしまいます
|
28
|
+
|
29
|
+
加えて、上記のような処理は、void Start、void Updateのどちらにも用いたいため、「1回目のUpdateで1秒待ってから経過時間を測る」ような処理は、うまくいかない可能性があります、、、
|
30
30
|
|
31
31
|
|
32
32
|
|
2
誤字
test
CHANGED
File without changes
|
test
CHANGED
@@ -10,13 +10,23 @@
|
|
10
10
|
|
11
11
|
4ステップ目だけ複雑な命令を出しているわけでもないのに、340msもかかってしまう理由がわかりません。
|
12
12
|
|
13
|
+
これが起こる原因並びにその解決策、または1ステップごとに同じ経過時間を計測できる方法を探しています
|
14
|
+
|
15
|
+
|
16
|
+
|
17
|
+
|
18
|
+
|
19
|
+
### これを使用したいプロジェクトについて
|
20
|
+
|
13
|
-
|
21
|
+
現実時間と連動したゲームを作成したいと考えているので、『経過時間(ms)をiとおき、要素数100の配列のBox[]があるとした場合』
|
14
22
|
|
15
23
|
今のiの値が40の場合は配列Box[40]を指定し、1ステップ後(1回Updateした後)のiが60だとしたら、Box[41]ではなくBox[60]を指定したいです
|
16
24
|
|
17
|
-
現在作成しているプロジェクトが
|
25
|
+
現在作成しているプロジェクトがこのような仕様になっており、ほぼ同じ周期でUpdateされることを前提としているため、4ステップ目の更新のみ340msかかってしまうとコーディングが難しいです
|
18
26
|
|
19
|
-
|
27
|
+
加えて、void Strt()とvoid Updateの両方でBox[i]を使うため、「初めてUpdateしたときに1秒待ってから処理を始める」は解決策としてはちょっと違うかもしれません、、、
|
28
|
+
|
29
|
+
|
20
30
|
|
21
31
|
|
22
32
|
|
1
誤字
test
CHANGED
File without changes
|
test
CHANGED
@@ -10,7 +10,11 @@
|
|
10
10
|
|
11
11
|
4ステップ目だけ複雑な命令を出しているわけでもないのに、340msもかかってしまう理由がわかりません。
|
12
12
|
|
13
|
+
また、現実時間と連動したゲームを作成したいと考えているので、『経過時間(ms)をiとおき、要素数100の配列のBox[]があるとした場合』
|
13
14
|
|
15
|
+
今のiの値が40の場合は配列Box[40]を指定し、1ステップ後(1回Updateした後)のiが60だとしたら、Box[41]ではなくBox[60]を指定したいです
|
16
|
+
|
17
|
+
現在作成しているプロジェクトが、上記の仕様になっており、同じ周期でUpdateされることを前提としているため、4ステップ目の更新のみ340msかかってしまい、コーディングが難しいです
|
14
18
|
|
15
19
|
これが起こる原因並びにその解決策、または1ステップごとに同じ経過時間を計測できる方法を探しています
|
16
20
|
|