matrix_build_projection_ortho

此函数根据下面列出的指定参数构建正交投影矩阵(这是您在 GameMaker 中创建房间时使用的默认投影方法,无需更改任何内容)。 有时您需要从透视投影切换到正交投影,这就是此函数的用途。 它通常用于绘制覆盖图,例如,显示分数或其他方面,因为这给出了 3D 游戏中绘制的元素的“平面”视图(即:无透视图)。 请参阅下图以了解正交视图和透视视图之间的区别。

注意:如果你想要绘制信息而不考虑当前深度值,你可能还需要临时关闭隐藏表面去除。

Ortho prjection matrix  example

语法:

matrix_build_projection_ortho(width, height, znear, zfar);

参数类型描述
wReal投影的宽度。
hReal投影的高度。
znearReal近裁剪平面。
zfarReal远剪切平面。

 

返回:

Matrix Array

 

例子:

viewmat = matrix_build_lookat(640, 240, -10, 640, 240, 0, 0, 1, 0);
projmat = matrix_build_projection_ortho(640, 480, 1.0, 32000.0);
camera_set_view_mat(view_camera[0], viewmat);
camera_set_proj_mat(view_camera[0], projmat);

上面的代码创建了一个新的观察矩阵和正交矩阵,将它们的 ID 存储在局部变量中,然后使用它们为分配给视口 [0] 的摄像机设置视图和投影矩阵。