physics - Bullet 中的惯性张量为零有什么作用?

标签 physics bulletphysics bullet

在 Bullet Physics 库中,构造刚体时,惯性张量的默认参数是零向量。

我对惯性的理解相当初级,但从方程

扭矩 = 惯量 * angular_velocity

我希望具有零惯性的物体上的角速度是不确定的。

documentation for constructing rigid bodies

For dynamic objects, you can use the collision shape to approximate the local inertia tensor, otherwise use the zero vector (default argument)



那么这个零惯性会发生什么?我误解了等式吗?或者在 Bullet 中具有零惯性类似于在将物体定义为相对于方向静止时具有零质量?

最佳答案

首先让我们定义惯性。

Inertia is the resistance of any physical object to a change its state of motion, or the tendency of an object to resist any change in its motion.



惯性张量的非对角元素称为惯性积。当物体关于旋转轴对称时,惯性积为零,例如矩形盒子或圆柱体绕其对称轴旋转。我想你使用的物理引擎中使用的惯性张量总是对角线以避免复杂性。

我想在你的弹道物理引擎的情况下,这个扭矩可能发挥作用的是一个物体,假设它以以下角速度 (0, 0, ωr) [在圆柱坐标 ( r, theta, z)],那么您可能想要找出在某个时间 t 内停止旋转所需的扭矩(即大小为 -ωr/t 的旋转加速度)。在这里,您将使用上面提到的等式。

零矩阵的解释是表示零“惯性”,并且没有质量的物体以及我上面所说的再次成立。

关于physics - Bullet 中的惯性张量为零有什么作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16322080/

相关文章:

ios - 恒定速度,同时仍然能够施加脉冲

ios - swift +物理: Wrong angle calculation on collision

c++ - 项目符号 : Load/Save collisionshape

c++ - 将 Bullet Physics 与项目(未命名标签)集成时出错

java - 在 LibGDX 中使用 Bullet 的奇怪 rayTest 结果

c++ - Bullet Physics - 在 body 的局部空间中应用扭矩脉冲

unity3d - 为什么计算机/游戏物理引擎通常是不确定的?

python-3.x - Python计算Grand Canonical Ensemble中的LennardJones 2D交互对相关分布函数

java - JME-Jbullet 物理问题

bullet - Ammo.js 自定义网格与球体碰撞