矢量和2D坐标系统
没有深入研究矢量数学。它旨在作为这些主题如何应用于Godot游戏开发的高级概述。矢量数学是游戏开发中必不可少的工具,因此如果你需要更广泛地了解该主题,请参阅Khan Academy's Linear Algebra series。
在2D中工作时,你将使用Cartesian coordinates(笛卡尔坐标)来识别空间中的位置。 2D空间中的特定位置被写为一对值,例如(4,3),分别表示沿x和y轴的位置。可以用这种方式描述2D平面中的任何位置。
在2D空间中,Godot遵循常见的计算机图形实践,即将x轴定向到右侧,将y轴定向为:
笛卡尔坐标提示
如果你是计算机图形学或游戏开发的新手,正y轴指向下而不是向上,可能看起来很奇怪,正如你可能在数学课上学到的那样。然而,这种取向在计算机图形应用中非常普遍。
矢量
你还可以将位置(4,3)视为与(0,0)点或原点的偏移。想象一下从原点到点的箭头:
矢量这个箭头是一个vector(矢量)。它代表了大量有用的信息,包括点的位置,(4,3),它的长度m,以及它与x轴的角度θ。总而言之,这是一个位置矢量,换句话说,它描述了一个空间位置。矢量还可以表示移动,加速度或具有x和y分量的任何其他数量。
在Godot中,向量(vector2代表2D矢量或vector3代表3D矢量)被广泛使用,你将在本书的构建项目中使用它们。
像素渲染
Godot的矢量坐标是浮点数,而不是整数。这意味着Vector2可以具有小数值,例如(1.5,1.5)。由于无法以半像素绘制对象,因此可能会导致pixel art games(像素艺术游戏)出现视觉问题,你需要确保绘制纹理的所有像素。
要解决此问题,请打开 Project | Project Settings并找到侧栏中的Rednding/Qualty部分,并启用Ues Pixel Snap,如以下屏幕截图所示:
像素渲染设置如果你在游戏中使用2D像素艺术,那么在启动项目时始终启用此设置是个好主意。此设置对3D游戏无效。
网友评论