Unity利用GL划线

利用GL划线

<span style="font-size:14px;">using UnityEngine;
using System.Collections;

public class Test : MonoBehaviour {

    private Material lineMaterial; // 一个材质
    //系统自动调用  OnPostRender()
    void CreateLineMaterial()
    {
        if (!lineMaterial)
        {  
            //实例化材质
            lineMaterial = new Material("Shader \"Lines/Background\" { Properties { _Color (\"Main Color\", Color) = (1,0.5,1,1) } SubShader { Pass {" + " ZWrite off " + " Blend SrcAlpha OneMinusSrcAlpha" + " Colormask RGBA " + "Lighting Off Offset 1, 1 Color[_Color] }}}");
            //设置材质属性
            lineMaterial.hideFlags = HideFlags.HideAndDontSave;
            lineMaterial.shader.hideFlags = HideFlags.HideAndDontSave;
        }
    }

    void OnPostRender()
    {
        CreateLineMaterial();

        lineMaterial.SetPass(0);
        GL.Begin(GL.LINES);  // GL开始划线
        for (int i = 0; i < 10; i++)
        {
            Debug.Log("draw  i:" + i);
            GL.Vertex3(0, 0, 0);  //开始坐标
            GL.Vertex3(0, 4, 0);  //结束坐标

            GL.Vertex3(i, 0, 0); //开始坐标
            GL.Vertex3(i, 5, 0); //结束坐标

            GL.Vertex3(i, 0, 0);  //开始坐标
            GL.Vertex3(i, 5, 0);  //结束坐标

            GL.Vertex3(i, 0, 0);  //开始坐标
            GL.Vertex3(i, 5, 0);  //结束坐标
        }
        GL.End();    //GL结束划线
    }
}
</span>


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值