Godot中二维物理的测量单位(单位尺度)?
Unit of measurement (unit scale) of 2D physics in Godot?
来自 Unity/Box2D 我记得遵守 1 单位 = 1 米规则并将世界设置在合理的数值范围内对于数值稳定性至关重要。例如,a quote from this question:
Box2D is a simulation framework which internally uses the MKS system of units. If you want a reliable and predictable simulation, you should express the simulation systems you create in reasonable values within this system of units. You want a box to behave like a box, a rock to behave like a rock and a ball to behave like a ball.
physics documentation of Godot doesn't mention anything about the underlying unit of measurement. Judging from forum posts,人家好像用1单位=1像素。
我的问题是:
- Godot 的 2D 物理是否针对特定值范围进行了调整?
如果它们被调整为使用像素,那究竟是什么意思?
例如,我是否应该避免拥有任何小于 1 个单位的物理对象(因为无论如何它在视觉上都不相关)。或者另一方面,如果我的世界需要模拟宏观物理效果(即以像素表示时相当大),我是否应该在内部缩小世界以保持稳定性?
虽然我找不到官方声明,但我们可以收集一些信息。您找到了一些论坛帖子,我们可以在文档中收集一些提示。
3D intro提到:
Godot uses the metric system for everything. 3D Physics and other areas are tuned for this, so attempting to use a different scale is usually a bad idea (unless you know what you are doing).
ARVRServer 文档提到:
Most AR/VR platforms assume a scale of 1 game world unit = 1 meter in the real world.
虽然大多数游戏可能不是 AR/VR,但在没有其他信息的情况下,遵循这个比例似乎是个好主意。
那么给定3D的1unit=1米比例尺,我们应该为2D做些什么呢?默认 3D 重力设置为 9.8
,默认 2D 重力设置为 98
(您可以在 Project Settings > Physics > 2D
下找到它)。鉴于此,我猜 10 像素 = 1 米。
来自 Unity/Box2D 我记得遵守 1 单位 = 1 米规则并将世界设置在合理的数值范围内对于数值稳定性至关重要。例如,a quote from this question:
Box2D is a simulation framework which internally uses the MKS system of units. If you want a reliable and predictable simulation, you should express the simulation systems you create in reasonable values within this system of units. You want a box to behave like a box, a rock to behave like a rock and a ball to behave like a ball.
physics documentation of Godot doesn't mention anything about the underlying unit of measurement. Judging from forum posts,人家好像用1单位=1像素。
我的问题是:
- Godot 的 2D 物理是否针对特定值范围进行了调整?
如果它们被调整为使用像素,那究竟是什么意思?
例如,我是否应该避免拥有任何小于 1 个单位的物理对象(因为无论如何它在视觉上都不相关)。或者另一方面,如果我的世界需要模拟宏观物理效果(即以像素表示时相当大),我是否应该在内部缩小世界以保持稳定性?
虽然我找不到官方声明,但我们可以收集一些信息。您找到了一些论坛帖子,我们可以在文档中收集一些提示。
3D intro提到:
Godot uses the metric system for everything. 3D Physics and other areas are tuned for this, so attempting to use a different scale is usually a bad idea (unless you know what you are doing).
ARVRServer 文档提到:
Most AR/VR platforms assume a scale of 1 game world unit = 1 meter in the real world.
虽然大多数游戏可能不是 AR/VR,但在没有其他信息的情况下,遵循这个比例似乎是个好主意。
那么给定3D的1unit=1米比例尺,我们应该为2D做些什么呢?默认 3D 重力设置为 9.8
,默认 2D 重力设置为 98
(您可以在 Project Settings > Physics > 2D
下找到它)。鉴于此,我猜 10 像素 = 1 米。