質問: relativeforce/rigidbody.mass; rigidbody.AddRelativeForce(force); if(rigidbody.velocity.magnitude > 0){ Debug.Log("-----"); Debug.Log("位置:"+ this.transform.position.ToString("G")); Debug.Log("算出:"+ (this.transform.position + rigidbody.velocity*Time.deltaTime + 1f/2f*acc*Time.deltaTime*Time.deltaTime).ToString("G")); } ```
回答: addForceってのは加速度で、画面端は位置です 単位が違いますので比較することすらできません ちゃんと加速度や速度がどういうものなのか理解していれば、 次のフレームの予測位置というのは計算できます 加速度が1m/ss → 速度が1秒ごとに1m/s増えていく 速度が1m/s → 位置が1秒ごとに1m増えていく つまり1フレーム後の位置は加速度が0なら、transform.position + rb.velocity * Time.deltaTimeです ※time.deltaTimeは前フレームから現在のフレームの時間なので、次のフレームが等間隔でくるのが前提です