GL.LoadProjectionMatrix

切换到手册
public static void LoadProjectionMatrix (Matrix4x4 mat);

描述

将任意矩阵加载到当前投影矩阵。

此函数覆盖当前摄像机的投影参数,因此,绝大多数情况下,需要 使用 GL.PushMatrixGL.PopMatrix 保存和恢复投影矩阵。模型和视图矩阵保持 不变。请注意,摄像机的视图矩阵通常沿 z 轴执行 -1 缩放, 根据用例,可能无需考虑这一缩放。

加载的投影矩阵预期会投影到由以下边界定义的与 API 无关的剪辑 体积中:
1. x = -1..1 (left..right)
2. y = -1..1 (bottom..top)
3. z = -1..1 (near..far)

Unity 可能会将矩阵与其他变换组合起来,以映射到实际图形 API 的 约定。生成的矩阵可通过 GL.GetGPUProjectionMatrix 获取。

using UnityEngine;

public class Example : MonoBehaviour { Matrix4x4 projMtrx = Matrix4x4.identity;

void OnPostRender() { GL.PushMatrix(); GL.LoadProjectionMatrix(projMtrx); // Do your drawing here... GL.PopMatrix(); } }

另请参阅:GL.LoadOrtho