坐标系统
Bevy 使用右手 Y 轴向上坐标系。
为保持一致性,Bevy 在 3D、2D 和 UI 中使用相同的坐标系。
用 2D 来解释最简单易懂:
- X 轴从左到右(+X 指向右)。
- Y 轴从下到上(+Y 指向上)。
- Z 轴从远到近(+Z 指向你,在屏幕外)。
- 对于 2D 来说,原点(X=0.0,Y=0.0)默认是在 屏幕的正中心。
- 对于 UI,原点在 左下角。
当你在处理 2D 精灵时,你可以把背景放在 Z=0.0 的位置,然后通过调整不同精灵的 Z 坐标(大于 0.0),来把它们相互叠加在一起。
在 3D 中,各轴的方向是一样的。
这是一个右手坐标系统。你可以用右手的手指来想象这3个轴:拇指=X、食指=Y、中间=Z。
这与 Godot、Maya 和 OpenGL 相同。与 Unity 相比,它的 Z 轴是相反的。
注意:在 Bevy 中,Y 轴总是指向 上方。
如果你习惯于使用 Y 轴向下的 2D 库,这可能导致在开发 UI 时会感觉不直观(因为它与网页相反)。
还要注意的是在处理 2D 开发时的一个常见的陷阱:摄像机必须放置在一个较远的Z坐标(默认为Z=999.9),否则你屏幕可能无法看到你的精灵。