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

GL.LoadOrtho

Declaration

public static void LoadOrtho();

Описание

Помощная функция для создания ортографической проекции.

Загружает ортографическую проекцию в матрицу проекции и загружает идентичность в матрицы модели и представления.

Полученная проекция выполняет следующие отображения:
1. x = 0..1 до x = -1..1 (слева..справа)
2. y = 0..1 до y = -1..1 (нижняя..верхняя)
3. z = 1..-100 до z = -1..1 (близко..далеко)

Это эквивалентно следующим операциям:

using UnityEngine;

public class Example : MonoBehaviour { void OnPostRender() { // ...

GL.LoadOrtho();

// is equivalent to:

GL.LoadIdentity(); var proj = Matrix4x4.Ortho(0, 1, 0, 1, -1, 100); GL.LoadProjectionMatrix(proj);

// ... } }

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

using UnityEngine;

public class Example : MonoBehaviour { // Draws a triangle under an already drawn triangle Material mat;

void OnPostRender() { if (!mat) { Debug.LogError("Please Assign a material on the inspector"); return; } GL.PushMatrix(); mat.SetPass(0); GL.LoadOrtho(); GL.Color(Color.red); GL.Begin(GL.TRIANGLES); GL.Vertex3(0.25f, 0.1351f, 0); GL.Vertex3(0.25f, 0.3f, 0); GL.Vertex3(0.5f, 0.3f, 0); GL.End();

GL.Color(Color.yellow); GL.Begin(GL.TRIANGLES); GL.Vertex3(0.5f, 0.25f, -1); GL.Vertex3(0.5f, 0.1351f, -1); GL.Vertex3(0.1f, 0.25f, -1); GL.End();

GL.PopMatrix(); } }

Дополнительные ресурсы: ,GL.LoadProjectionMatrix,, ,Matrix4x4.Ortho,.