Unity 6.3
0 онлайн 3 гостей 3 в системе
Вход

GL.LoadPixelMatrix

Declaration

public static void LoadPixelMatrix();

Описание

Настройка матрицы для пиксельно-корректного рендеринга.

Загружает ортографическую проекцию в матрицу проекции и загружает идентичность в матрицы модели и вида. Матрица проекции такая, что координаты 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(); } }

Declaration

public static void LoadPixelMatrix(float left, float right, float bottom, float top);

Описание

Настройка матрицы для пиксельно-корректного рендеринга.

Загружает ортографическую проекцию в матрицу проекции и единичную матрицу в матрицы модели и вида. Матрица проекции такова, что координаты X и Y отображаются непосредственно в пиксели. Точка (left,bottom) находится в левом нижнем углу текущего окна камеры, а (top,right) — в правом верхнем. Координаты Z идут от 1 в ближней плоскости до -1 в дальней.

Изменение матрицы модели, представления или проекции переопределяет текущие матрицы отображения. Хорошо сохранять и восстанавливать эти матрицы с помощью GL.PushMatrix и GL.PopMatrix.