资讯动态

Unity - HierarchyIconDrawer

发布时间:2026/10/14 21:41:07 来源:尧图企业网站定制
实现在Hierarchy面板里GameObject名称前绘制一个自定义Icon[InitializeOnLoad] public class HierarchyIconDrawer { private static readonly EditorApplication.HierarchyWindowItemCallback hiearchyItemCallback; static HierarchyIconDrawer() { HierarchyIconDrawer.hiearchyItemCallback new EditorApplication.HierarchyWindowItemCallback(HierarchyIconDrawer.DrawHierarchyIcon); EditorApplication.hierarchyWindowItemOnGUI (EditorApplication.HierarchyWindowItemCallback)Delegate.Combine( EditorApplication.hierarchyWindowItemOnGUI, HierarchyIconDrawer.hiearchyItemCallback); } private static void DrawHierarchyIcon(int instanceID, Rect selectionRect) { GameObject obj EditorUtility.InstanceIDToObject(instanceID) as GameObject; if (obj null) return; if (obj.transform.parent null) return; Color? col obj.transform.parent.name switch { 角色出生点 Color.white, NPC刷新点 Color.gray, _ null }; if (col null) return; Rect rect new Rect(selectionRect.x, selectionRect.y, 16, 16); GUI.DrawTexture(rect, Texture2D.whiteTexture, ScaleMode.StretchToFill, false, 0, col.Value, 16, 16); } }

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑