gizmo | 用于指示应绘制辅助图标的标志。 |
定义应调用辅助图标以进行绘制的情况。
using UnityEngine; using UnityEditor;
// Draw an image above the light when the light is not selected // The icon has to be stored in Assets/Gizmos
public class ExampleScript : MonoBehaviour { // Draw an image above the light when the light is not selected [DrawGizmo(GizmoType.NotInSelectionHierarchy | GizmoType.Pickable)] static void drawGizmo1(Light light, GizmoType gizmoType) { Vector3 position = light.transform.position;
Gizmos.DrawIcon(position + Vector3.up, "ninja.jpg"); }
// Place a red sphere around a selected light. // Surround the sphere dark shaded when not selected. [DrawGizmo(GizmoType.Selected | GizmoType.NonSelected)] static void drawGizmo2(Light light, GizmoType gizmoType) { Vector3 position = light.transform.position;
if ((gizmoType & GizmoType.Selected) != 0) { Gizmos.color = Color.red; } else { Gizmos.color = Color.red * 0.5f; } Gizmos.DrawSphere(position , 1); } }
gizmo | 用于指示应绘制辅助图标的标志。 |
drawnGizmoType | 应为其绘制辅助图标的对象类型。 |
同上。drawnGizmoType
决定了我们绘制辅助图标所必须面向的对象类型。
如果 drawnGizmoType 为 null,该类型将由绘制辅助图标方法的第一个参数决定。 如果 drawnGizmoType 不为 null,该类型必须与第一个参数的类型相同或是其子类型。