Version: 5.3 (switch to 5.4b)
ЯзыкEnglish
  • C#
  • JS

Язык программирования

Выберите подходящий для вас язык программирования. Все примеры кода будут представлены на выбранном языке.

GL.Begin

Руководство
public static void Begin(int mode);

Параметры

mode @param mode Примитивы для визуализации: могут быть TRIANGLES, TRIANGLE_STRIP, QUADS или LINES.

Описание

Начать визуализацию 3D примитивов.

В OpenGL это соответствует glBegin; в других графических API эта функциональность эмулируется. Между вызовами GL.Begin и GL.End можно вызывать GL.Vertex, GL.Color, GL.TexCoord и другие функции визуализации немедленного режима.

Вы должны учитывать отсечение, когда сами визуализируете примитивы. Правила отсечения могут отличаться, в зависимости от графического API, с которым запущена игра. В большинстве случаев самый безопасный способ - это использовать команду Cull Off в шейдере.

See Also: GL.End.

using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour { public Material mat; void OnPostRender() { if (!mat) { Debug.LogError("Please Assign a material on the inspector"); return; } GL.PushMatrix(); mat.SetPass(0); GL.LoadOrtho(); GL.Begin(GL.TRIANGLES); GL.Color(new Color(1, 1, 1, 1)); GL.Vertex3(0.5F, 0.25F, 0); GL.Vertex3(0.25F, 0.25F, 0); GL.Vertex3(0.375F, 0.5F, 0); GL.End(); GL.Begin(GL.QUADS); GL.Color(new Color(0.5F, 0.5F, 0.5F, 1)); GL.Vertex3(0.5F, 0.5F, 0); GL.Vertex3(0.5F, 0.75F, 0); GL.Vertex3(0.75F, 0.75F, 0); GL.Vertex3(0.75F, 0.5F, 0); GL.End(); GL.Begin(GL.LINES); GL.Color(new Color(0, 0, 0, 1)); GL.Vertex3(0, 0, 0); GL.Vertex3(0.75F, 0.75F, 0); GL.End(); GL.PopMatrix(); } }