End drawing 3D primitives.
In OpenGL this matches glEnd; on other graphics APIs the same functionality is emulated.
See Also: GL.Begin.
// 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(); // End drawing Triangle
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(); // End drawing quad
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(); // End drawing Line
GL.PopMatrix();
}
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();
}
}
import UnityEngine
import System.Collections
class example(MonoBehaviour):
public mat as Material
def OnPostRender():
if not mat:
Debug.LogError('Please Assign a material on the inspector')
return
GL.PushMatrix()
mat.SetPass(0)
GL.LoadOrtho()
GL.Begin(GL.TRIANGLES)
GL.Color(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(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(Color(0, 0, 0, 1))
GL.Vertex3(0, 0, 0)
GL.Vertex3(0.75F, 0.75F, 0)
GL.End()
GL.PopMatrix()