Unity在Scene下绘制图片

作者: 循环渐进123456 | 来源:发表于2017-08-21 09:19 被阅读9次

    转载:http://blog.csdn.net/liqiangeastsun/article/details/42124181

    //在Scene下,在一个坐标位置显示一个图片,在Game中看不到。有时为了编辑方便使用
    //注意: 图片必须放在Gizmos文件夹下面。 
    using UnityEngine;
    using System.Collections;
    
    public class CameraMove : MonoBehaviour { 
       
        private Transform myTransform;
    
        void Start()
        {
            myTransform = transform;
        }
    
        //这里OnDrawGizmos()方法,脚本继承了MonoBehaviour后,并且在编辑模式下就会每一帧都执行它。
        //发布的游戏肯定就不会执行了,它只能用于在scene视图中绘制一些小物件。比如要做摄像机轨迹,
        //那么肯定是要在Scene视图中做一个预览的线,那么用Gizmos.DrawLine 和Gizmos.DrawFrustum就再好不过了。
        void OnDrawGizmos()
        {
            //绘制图片,参数1 为位置, 参数2 为 图片名(图片需放在Gizmos文件夹),参数 3 是否允许缩放
            Gizmos.DrawIcon( transform.position, "1.png", true);
           
            //下面3行代码绘制的图片不显示,因为获得坐标的时候
            //不是直接用 “transform”获取坐标会失败(具体原因没做处理)
            Vector3 pos = myTransform.position;
            pos.y += 2;
            Gizmos.DrawIcon( pos, "2.png", true); 
        }
    
        //在Scene下划线
        public GameObject EndPoint;
    
        void OnDrawGizmosSelected() //选择绑定该脚本的对象时划线
        {
            if (EndPoint != null)
            {
                Gizmos.color = Color.green;
                //绘制线段 参数1 起点位置,参数2 结束位置
                Gizmos.DrawLine(transform.position, EndPoint.transform.position);
            }
        }
    }
    

    相关文章

      网友评论

        本文标题:Unity在Scene下绘制图片

        本文链接:https://www.haomeiwen.com/subject/sbfcdxtx.html