只是想知道我是否遗漏了什么。我来自 ObjC 领域,其中 NSTimeInterval 是一个双精度值,它给出了“10,000 年范围内的亚毫秒精度”。将此与 Unity 进行比较,因为它使用浮动时间,一天后(甚至可能更早)开始崩溃。Math.Approximately(1 day, a day + 1 frame) 例如返回 true(而 1 小时 vs 1 小时 + 1 帧正确返回 false)。当我整夜打开游戏并重新开始时,我实际上经历了这种情况,注意到与时间相关的事物的奇怪行为。
Unity3d 引擎中的许多组件都使用浮点。因此你会发现很多函数和值会分别返回浮点数或存储浮点数。一旦您在 Unity3d 中编程了一段时间,您甚至会了解他们的构建的内部笑话 - 通常它们看起来像这样:4.3.1f - 一切都是浮点数。
如果您使用 C#,您应该能够使用 .NET 将时间加倍。另外,我强烈建议,对于某些事情,使用 .NET Math 类而不是 Unity Math.h,一个速度快,另一个是浮点数。
| 归档时间: |
|
| 查看次数: |
2656 次 |
| 最近记录: |