对于数量...
对于每个三角形面,查找其角点.叫'em P,Q,R.
计算这个数量(我称之为"部分量")
pv = PxQyRz + PyQzRx + PzQxRy - PxQzRy - PyQxRz - PzQyRx
Run Code Online (Sandbox Code Playgroud)
将这些加在一起用于所有方面并除以6.
重要!从外面看,每个刻面的P,Q,R必须顺时针排列.(或者所有逆时针方向,只要它对所有方面都一致.)
如果网格具有任何四边形,则只是暂时幻化连接一对相对角的对角线.这使它成为两个三角形.
实际的计算改进:在用P,Q和R进行数学运算之前,减去一些"中心"点C的坐标.这可以是质心,最小/最大x,y和z之间的中点,或任何方便点在网格内部或附近.这有助于最大限度地减少截断错
好吧,这里提供的关于汽车的信息并不多 - 您应该能够将汽车分解为更简单的形状 - 您需要的近似程度越高 - 您可以将其分解为更简单的形状。(如果汽车以某种方式动态生成并且每次都完全不同,这可能会很困难......但我认为这种情况没有任何意义)。
这应该有助于找到各种更简单形状的惯性张量:http://www.gamedev.net/community/forums/topic.asp ?topic_id=57001,找到球体和立方体等物体的体积等是很常见的知识,所以我不会费心链接它。