Begin 的模式:绘制线条。
绘制经过每对顶点的线条。如果经过 4 个顶点,A、B、C 和 D,则绘制两条线:一条在 A 和 B 之间,一条在 C 和 D 之间。
要为 2D 模式绘制设置屏幕,则使用 GL.LoadOrtho 或 GL.LoadPixelMatrix。
要为 3D 模式绘制设置屏幕,则使用 GL.LoadIdentity,然后使用具有所需变换矩阵的 GL.MultMatrix。
另请参阅:GL.Begin、GL.End。
using UnityEngine; using System.Collections;
public class ExampleClass : MonoBehaviour { public Material mat; private Vector3 startVertex; private Vector3 mousePos; void Update() { mousePos = Input.mousePosition; if (Input.GetKeyDown(KeyCode.Space)) startVertex = new Vector3(mousePos.x / Screen.width, mousePos.y / Screen.height, 0); } void OnPostRender() { if (!mat) { Debug.LogError("Please Assign a material on the inspector"); return; } GL.PushMatrix(); mat.SetPass(0); GL.LoadOrtho(); GL.Begin(GL.LINES); GL.Color(Color.red); GL.Vertex(startVertex); GL.Vertex(new Vector3(mousePos.x / Screen.width, mousePos.y / Screen.height, 0)); GL.End(); GL.PopMatrix(); } void Example() { startVertex = new Vector3(0, 0, 0); } }