GL.End 结束

static function End () : void

Description描述

End drawing 3D primitives.

结束绘制3D原始物体。

In OpenGL this matches glEnd; on other graphics APIs the same functionality is emulated.

这个函数和OpenGL中的glEnd一样。其它的图形API也有对应的功能。

参见:GL.Begin.

using UnityEngine;
using System.Collections;

public class example : 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();
    }
}
// Draws a Triangle, a Quad and a line
// with different colors
//绘制具有不同颜色的一个三角形、一个方形和一条线
var mat : Material;
function OnPostRender() {
    if (!mat) {
        Debug.LogError("Please Assign a material on the inspector");
        return;
    }
    GL.PushMatrix();
    mat.SetPass(0);
    GL.LoadOrtho();
    GL.Begin(GL.TRIANGLES); // Triangle
    GL.Color(Color(1,1,1,1));
    GL.Vertex3(0.50,0.25,0);
    GL.Vertex3(0.25,0.25,0);
    GL.Vertex3(0.375,0.5,0);
    GL.End();
    GL.Begin(GL.QUADS); // Quad
    GL.Color(Color(0.5,0.5,0.5,1));
    GL.Vertex3(0.5,0.5,0);
    GL.Vertex3(0.5,0.75,0);
    GL.Vertex3(0.75,0.75,0);
    GL.Vertex3(0.75,0.5,0);
    GL.End();
    GL.Begin(GL.LINES); // Line
    GL.Color(Color(0,0,0,1));
    GL.Vertex3(0,0,0);
    GL.Vertex3(0.75,0.75,0);
    GL.End();
    GL.PopMatrix();
}
Page last updated: 2012-7-5