Ala*_*anF 4 c# physics unity-game-engine game-physics
当以下是所有常数时,如何获得子弹击中目标所需的初始速度
time to target
gravity
initial position of the ball and the target
radius of the ball
Run Code Online (Sandbox Code Playgroud)
我在Unity 3D中使用c#为代码做了一些例子.我不是要求代码,我只是想知道采取什么步骤来做这件事(物理方面).
您的问题可以使用运动学来解决.你需要了解一些关于物理学的知识,但这一切都非常简单.
让我们来看看我们所知道的:
要计算你需要这些方程式:
VelocityFinal_x = VelocityInitial_x
FinalDistance_x - InitialDistance_x = VelocityInitial_x * time
VelocityFinal_y = VelocityInitial_y + gravity * time
Run Code Online (Sandbox Code Playgroud)
只需重新排列第二个等式即可找到 VelocityInitial_x
请注意,我们不需要使用z轴.除非风在飞行途中移动子弹,否则不要触摸z轴.
确保在子弹发射的瞬间进行一次这些计算,不要在游戏的每一帧都进行.
| 归档时间: |
|
| 查看次数: |
1874 次 |
| 最近记录: |