スクリプトの不具合??仕様??
c#
1 private void FixedUpdate() 2 { 3 4 float x = Input.GetAxisRaw("Horizontal"); 5 6 if (Input.GetKeyDown(KeyCode.Space) || Input.GetKeyDown(KeyCode.Joystick1Button1)) 7 rb2d.AddForce(Vector2.up * jumpPower); 8 //左か右を入力したら 9 if (x != 0) 10 { 11 rb2d.velocity = new Vector2(x * spped, rb2d.velocity.y); 12 Vector2 temp = transform.localScale; 13 if (x < 0.1 || x > -0.1) 14 temp.x = Mathf.Sign(x); 15 transform.localScale = temp; 16 } 17 else 18 { 19 rb2d.velocity = new Vector2(0,rb2d.velocity.y); 20 } 21 } 22
以下のような書き方をし、ジャンプの挙動の実装を試みました。ですが、Rigidbodyの仕様なのか、唐突に大ジャンプを繰り広げるときがあります。この場合の解決方法はどのようなものがあるのかご教授していただけると嬉しいです。
前後のソースコードも記載した方がよろしいかと思います。「jumpPowerが意図せずに変わっている」とか「AddForce()が複数回呼ばれている」とか考えられますので。
回答1件
あなたの回答
tips
プレビュー