gpt4 book ai didi

c - 仅使用 C 语言的 OPENGL 3D 世界中的物理

转载 作者:太空宇宙 更新时间:2023-11-04 03:09:56 25 4
gpt4 key购买 nike

我一直在尝试编写一个玩家射箭的 3D 游戏,我想为 3D 计算方程式。我知道二维世界的方程式,其中:

x = v0 * cosθ * t
y = v0 * sinθ * t - 0.5 * g * t^2

但是我如何在具有 Z 轴的 3D 世界中使用这些方程式呢?

最佳答案

我建议逐步模拟箭头,而不是让箭头遵循明确的曲线。

您需要存储的是一个位置(具有 x、y、z 坐标,从弓箭手的位置开始)和一个速度(也具有 x、y、z 坐标,从某个常数乘以玩家的方向开始正在寻找)和一些场景引力(也有 x、y、z 坐标,但它可能会笔直指向下方)。

当模拟以 t 的时间步长进行时,将 t 倍的速度添加到位置,然后将 t 倍的重力添加到速度。

这样,您以后可以自由地对箭头做更多有趣的事情,比如让风作用在它上面(将 t 次风加到速度上)或者让空气阻力作用在它上面(将速度乘以 t 乘以某个略小于 1 的值)或将其重定向(完全将速度更改为其他值)而无需重新计算箭头的路径。

关于c - 仅使用 C 语言的 OPENGL 3D 世界中的物理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57350284/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com