设置一个用于像素校正渲染的矩阵。
将正交投影加载到投影矩阵中,将标识加载到
模型和视图矩阵中。投影矩阵是这样一个矩阵,X 和 Y 坐标直接映射到像素。
坐标 (0,0) 位于当前摄像机视口的左下角。Z 坐标从近平面
的 1 到远平面的 -100。
更改模型、视图或投影矩阵会覆盖当前的渲染矩阵。
最好使用 GL.PushMatrix 和 GL.PopMatrix 保存和恢复这些矩阵。
using UnityEngine;
public class Example : MonoBehaviour { // Draws a red triangle using pixels as coordinates to paint on. Material mat;
void OnPostRender() { if (!mat) { Debug.LogError("Please Assign a material on the inspector"); return; } GL.PushMatrix(); mat.SetPass(0); GL.LoadPixelMatrix();
GL.Begin(GL.TRIANGLES); GL.Color(Color.red); GL.Vertex3(0, 0, 0); GL.Vertex3(0, Screen.height / 2, 0); GL.Vertex3(Screen.width / 2, Screen.height / 2, 0); GL.End();
GL.PopMatrix(); } }
设置一个用于像素校正渲染的矩阵。
将正交投影加载到投影矩阵中,将标识加载到
模型和视图矩阵中。投影矩阵是这样一个矩阵,X 和 Y 坐标直接映射到像素。
(left,bottom) 位于当前摄像机视口的左下角;(top,right) 位于当前摄像机
视口的右上角。Z 坐标从近平面的 1 到远平面的 -1。
更改模型、视图或投影矩阵会覆盖当前的渲染矩阵。
最好使用 GL.PushMatrix 和 GL.PopMatrix 保存和恢复这些矩阵。