2

有时,某些对象会在使用 Bullet Physics 模拟的世界中获得 NAN 值。(非常罕见)正确的处理方法是什么?是否有内置子弹物理功能来检测此类物体以避免 NAN 病毒效应。为什么有些对象正在获取 NAN。我不施加 NAN 力量或冲动。我认为这可以通过在相同坐标下创建 2 个对象来解决。

4

1 回答 1

1

两件事情:

1)这样的夹紧速度应该可以防止任何身体立即加速

btScalar speed = velocity.length();
if(speed > speedLimit) {
    velocity *= speedLimit/speed;
    body->setLinearVelocity(velocity);
}

2)自己检查NaN值,并使用最安全的默认值或以前的值

if (isnan(someValue))
{
    someValue = fallbackValue;
}
于 2012-11-21T21:41:01.540 回答