2
我正在用D中的OpenGL编写一个3D游戏,并且遇到浮点问题。当我将零与另一个浮点值(非零)分开时,它将始终为NaN而不是0.这导致NaN在整个代码中传播时感到麻烦,所有其他分裂/相乘的其他所有内容也会变成NaN。我真的不想用if value != 0.0f
支票包住我所有的部门。用零除零值时防止NaN
像float value = getCurrentSpeed()/getMaxSpeed()
这样的简单检查将返回NaN,如果getCurrentSpeed()
返回0.0f。
看来,问题的起源是在一个向量的长度计算为NaN当它应该是零的外部库。 – Freddroid