我试图将软体的运动锁定到x轴。我希望能够左右移动,但将其锁定在z轴的相同位置。
即使我沿x轴施加速度,由于空气阻力和软体移动的方式,有时也会导致身体在z轴上向后移动。
为了解决这个问题,我想使用tick回调来确保软体的z位置始终为0;
这是解决问题的最佳方式,如果是这样,我该如何设定位置。
我尝试过.transform()和.translate(),但还没有设法让它运转起来。
感谢。
答案 0 :(得分:4)
尝试使用setLinearFactor()
代码。它的工作原理如下:
body->setLinearFactor(btVector3(0.0, 1.0, 1.0));
此代码会阻止x轴上的任何移动。身体结构可以是刚体或软体,btVector3
参数是:1代表运动,0代表任何类型的运动。在你的情况下,它看起来像我之前做的