Unity Gizmos可视化辅助工具

所有gizmo绘制需要在脚本的OnDrawGizmos或OnDrawGizmosSelected里函数完成。

  OnDrawGizmos在每帧调用。所有在OnDrawGizmos中渲染的gizmos都是可见的。

  OnDrawGizmosSelected仅在脚本附加的物体被选择时被调用。  

 

  1. Gizmos.DrawLine

  从obj1到obj2之间画一条绿色的线。

 1 using UnityEngine;
 2 using System.Collections;
 3 public class DrawLineText : MonoBehaviour {
 4 
 5     public GameObject obj1;
 6     public GameObject obj2;
 7     
 8     void OnDrawGizmos()
 9     {
10         Gizmos.color = Color.green;
11         Gizmos.DrawLine( obj1.transform.position , obj2.transform.position );
12     }
13 }

 

 

2.Gizmos.DrawRay

 从obj向上画一条长度为10的射线

 1 using UnityEngine;
 2 using System.Collections;
 3 public class DrawRayText : MonoBehaviour {
 4 
 5     public GameObject obj;
 6     void OnDrawGizmos()
 7     {
 8         Gizmos.color = Color.gray;
 9         Gizmos.DrawRay(obj.transform.position, Vector3.up * 10);  //10 是长度
10     }
11 }

 

 

3.Gizmos.DrawCube

 在(0,1,0)处画一个(1,1,1)大小的立方体

 1 using UnityEngine;
 2 using System.Collections;
 3 public class DrawCubeText : MonoBehaviour {
 4 
 5       void OnDrawGizmos()
 6     {
 7         Gizmos.color = Color.red;
 8         Gizmos.DrawCube(Vector3.up , Vector3.one);
 9     }
10 }

 

 

4.Gizmos.DrawIcon

 在(0,0,0)处生成一个名字为002IMgZLzy6Mro7r94Ka2&690.jpg的Icon ,此图片要放到Assets下的  Gizmos文件夹里才行。

1 using UnityEngine;
2 using System.Collections;
3 public class DrawIconText : MonoBehaviour {
4 
5       void OnDrawGizmos()
6     {
7         Gizmos.DrawIcon(Vector3.zero , "002IMgZLzy6Mro7r94Ka2&690.jpg");
8     }
9 }

 

posted @ 2017-11-07 16:52  朋丶Peng  阅读(5470)  评论(0编辑  收藏  举报