如何通过脚本更改ConfigurableJoint的角度?

时间:2019-01-22 16:51:53

标签: unity3d

我有一个用于摆的ConfigurableJoint,所以它只在一个轴上旋转。

仅仅改变摆的位置是行不通的,因为我无法猜测出确切的位置,因为所有有效的位置都在一个假想的圆上。为摆锤选择一个角度会容易得多。

如何通过脚本更改关节的角度?

1 个答案:

答案 0 :(得分:1)

因此,简短的答案是您根本不应该这样做。如果它是由物理驱动的,那么一旦物理引擎启动(例如第一帧),您就应该尝试使用尽可能少的代码来驱动它。

很长的答案是,您需要像在现实生活中一样施加力量将其移动到位。如果您想让钟摆保持笔直而不是指向下方的位置,那么在现实生活中,您必须用手握住它。现在,要计算所有涉及的力量在这里很难找到答案,但是如果您不担心它会立即发生,那么已经有一个经过实践检验的解决方案,称为PID Controller。 PID控制器的基本概念是,您查看当前位置(由对象的“变形”提供),并查看当前角速度(由对象的“刚体”提供),然后从中确定要应用以获得它的增量力到需要它的地方。在一轴上启动和运行应该很容易,但是需要进行一些调整才能使力正确。