我试图将软体的运动锁定到x轴。我希望能够左右移动,但将其锁定在z轴上的相同位置。

即使我沿x轴施加速度,有时也会由于空气阻力和我假定的软体移动方式而导致 body 在z轴上向后移动。

为了解决这个问题,我想使用一个tick回调来确保软体的z位置始终为0;

这是最好的方法吗,如果是的话,我该如何设置职位。

我已经尝试过.transform()和.translate(),但没有设法使其正常工作。

谢谢。

最佳答案

尝试使用setLinearFactor()代码。它像这样工作:

body->setLinearFactor(btVector3(0.0, 1.0, 1.0));

此代码阻止x轴上的任何移动。主体结构可以是刚体或软件,并且btVector3参数为:1用于运动,0用于阻止任何类型的运动。在你的情况下,看起来就像我以前做过的一样

09-11 12:06