加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

Unity 的绘制线段代码

发布时间:2020-12-15 07:49:54 所属栏目:Java 来源:网络整理
导读: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;
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里面的属性,对物体表面进行渲染,实现

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读