実現したいこと
Unity6で2D横スクロールアクションゲームを作っています
・入力の長さで高さを調整できるジャンプを作りたい
発生している問題・分からないこと
なぜかジャンプの最高高度が毎度変わります。動きをみたところおそらくですが、フレームレートが高くなるとジャンプの高さが低くなって、フレームレートが下がると、ジャンプの高さが高くなっていると思います。
該当のソースコード
//ソースコードの一部です↓ void Update() { Jump(); if(!isJumping ){ yMove = rb.linearVelocity.y; } float x = Input.GetAxisRaw("Horizontal"); rb.linearVelocity= new Vector2(x*speed,yMove); } private void Jump(){ //jumpTimer一定時間たったらisJumpingをfalseにする if(Input.GetKey(KeyCode.Z) & isJumping){ jumpTimer ++; Debug.Log(jumpTimer); if(jumpTimer >= maxJumpTimer){ isJumping = false; jumpTimer=0; } }else{ jumpTimer = 0; } //isJumpingオフ if(Input.GetKeyUp(KeyCode.Z)) { isJumping = false; } if(!isGround) return; //isJumpingオン if(Input.GetKeyDown(KeyCode.Z)) { isJumping = true; } //move if(isJumping) { yMove = jumpForce; } }
試したこと・調べたこと
- teratailやGoogle等で検索した
- ソースコードを自分なりに変更した
- 知人に聞いた
- その他
上記の詳細・結果
ネットで調べた結果、time.deltaTimeが関係していると推測しましたが、そもそもTime.deltaTimeをどこにかければいいのかわからないうえに、Time.deltaTimeがこの問題に本当に関係しているかもわかりません。もしよかったら教えて下さい。
補足
特になし

回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2025/08/06 22:43