【发布时间】:2015-11-16 08:21:39
【问题描述】:
我使用 Apple 的 SceneKit 框架创建了移动 3D 游戏。游戏很大程度上依赖于物理模拟。正因为如此,物理模拟必须跨设备相同。 SceneKit 无法做到这一点,因为我在不同设备上体验完全不同的物理模拟。正因为如此,我正在寻找一个新的框架或引擎来使用。在我深入研究 libGDX 之前。libGXD 如何处理物理?我的 3d 模拟在不同设备上看起来是否相同?如果没有,您建议使用哪些工具来创建相同的 3D 物理?
【问题讨论】:
-
让物理模拟以相同的方式执行是非常困难的。问题通常在于每个设备上浮点数的精确实现......即使在同一制造商的各种芯片组上,也不能保证它们是相同的。我发现的最佳解决方案是完全使用定点算法。
-
哦,你的意思是我应该缩放我的物理世界,使物体的所有位置和旋转数据都是整数?不知道如何处理摩擦或类似问题,因为它们始终是浮点数。
-
不完全是,请尝试维基百科文章:en.wikipedia.org/wiki/Fixed-point_arithmetic 以了解定点算法。简而言之,您决定说 32 位整数的最后 8 位是小数部分,并且对于所有算术,您使用移位来保持小数部分的大小相同。
标签: libgdx game-physics physics-engine