Unity 的绘制线段代码

using UnityEngine;
using System.Collections;
public class Line : MonoBehaviour
{
    public Material mat;
    public Color color = Color.red;
    public Vector3 pos1;
    public Vector3 pos2;
    public bool isReady = false;

    void Start()
    {
        mat.color = color;
    }

    void Update()
    {
        if (Input.GetMouseButtonDown(0))
        {
            pos1 = Input.mousePosition;
        }
        if (Input.GetMouseButtonUp(0))
        {
            pos2 = Input.mousePosition;
            isReady = true;
        }
    }

    void OnPostRender()
    {
        if (isReady)
        {
            GL.PushMatrix();
            mat.SetPass(0);
            GL.LoadOrtho();
            GL.Begin(GL.LINES);
            GL.Color(color);
            GL.Vertex3(pos1.x / Screen.width, pos1.y / Screen.height, pos1.z);
            GL.Vertex3(pos2.x / Screen.width, pos2.y / Screen.height, pos2.z);
            GL.End();
            GL.PopMatrix();
        }
    }
}

拓:

 Light Probe:光照探头,模拟场景运行时候的实时光照,可有效节省系统光照开销。设置时一般遵循一下准则:1.将光照探头放在灯光和阴影转换处,可以有效地降低系统光照运算开销;2. 移动物体,相机等,移动不到的范围,以及光影没有明显地变化区域就没必要设置光照探头了。

 

 

Reflection Probe:反射探头:模拟光对物体表面的反射,在特定的需要光照反射的地方,比如金属物体表面,我们就可以设置反射探头,系统会获取CubeMap里面的属性,对物体表面进行渲染,实现

转载于:https://www.cnblogs.com/allyh/p/11486921.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值