回答編集履歴
5
修正
test
CHANGED
@@ -34,4 +34,4 @@
|
|
34
34
|
|
35
35
|
・`Update`の`Input.GetKey`を`Input.GetKeyDown`に変更する。
|
36
36
|
|
37
|
-
・`isGrounded = false;`を`FixedUpdate`の`if (jumpFlag)
|
37
|
+
・`isGrounded = false;`を`FixedUpdate`の`if (jumpFlag)`条件式内に移す。
|
4
修正
test
CHANGED
@@ -26,6 +26,12 @@
|
|
26
26
|
|
27
27
|
**・解決策**
|
28
28
|
|
29
|
-
|
29
|
+
現状は`AddForce`が二回行われてジャンプ力2倍になる問題が出ていると思いますが下記どちらかで解決するかと思います。
|
30
30
|
|
31
|
+
まずは上の方を試して下さい。
|
32
|
+
|
33
|
+
|
34
|
+
|
35
|
+
・`Update`の`Input.GetKey`を`Input.GetKeyDown`に変更する。
|
36
|
+
|
31
|
-
|
37
|
+
・`isGrounded = false;`を`FixedUpdate`の`if (jumpFlag){}`条件式内に移す。
|
3
修正
test
CHANGED
@@ -12,7 +12,7 @@
|
|
12
12
|
|
13
13
|
その為、`AddForce`をおこなったフレームはまだ地面に接触しているので`OnCollsionStay`が呼び出されるのは正常です。
|
14
14
|
|
15
|
-
引用部分は間違いという事になります。
|
15
|
+
**引用部分は残念ながら間違いという事になります。**
|
16
16
|
|
17
17
|
|
18
18
|
|
2
修正
test
CHANGED
@@ -16,7 +16,11 @@
|
|
16
16
|
|
17
17
|
|
18
18
|
|
19
|
+
試した事の「AddForceメソッドではなくtransform.Positionを設定して物体を移動させた場合」はそのフレームで移動しているので`OnCollsionStay`は呼ばれないのは合っています。
|
20
|
+
|
21
|
+
|
22
|
+
|
19
|
-
これに関しては`Debug.Log`やデバッガを使って確認すると良いと思います。
|
23
|
+
これに関しては`Debug.Log`やデバッガを使って物体の位置を確認すると良いと思います。
|
20
24
|
|
21
25
|
|
22
26
|
|
1
修正
test
CHANGED
@@ -10,9 +10,9 @@
|
|
10
10
|
|
11
11
|
`AddForce`で物体に力を加えた場合に実際に物体が移動するのは力を加えた次のフレームからです。
|
12
12
|
|
13
|
-
その為、`OnCollsionStay`が
|
13
|
+
その為、`AddForce`をおこなったフレームはまだ地面に接触しているので`OnCollsionStay`が呼び出されるのは正常です。
|
14
14
|
|
15
|
-
引用部分は
|
15
|
+
引用部分は間違いという事になります。
|
16
16
|
|
17
17
|
|
18
18
|
|