Unity 문서를 확장하는 것이 매우 새로운데 계층 구조에서 선택한 개체를 강조 표시하는이 스크립트를 결합했습니다. 문제는 편집자가 스택의 상단 (장면 이름)을 트리에서 볼 때 전체 계층이 보이지 않게됩니다. 장면 이름이 보이지 않게 아래로 스크롤하면 스스로 수정됩니다. 나는 무슨 일이 일어나고 있는지 더 잘 이해할 수 있도록 이미지를 첨부했습니다. 객체가 많지만 새로운 장면에서 사용할 수 없으면이 문제는 사소합니다.계층을 강조 표시하기 위해 편집기를 확장 할 때 발생하는 문제
[InitializeOnLoad]
public class HierarchyHighlighter
{
static HierarchyHighlighter()
{
EditorApplication.hierarchyWindowItemOnGUI += HierarchyWindowItem_CB;
}
private static void HierarchyWindowItem_CB(int selectionID, Rect selectionRect)
{
Object o = EditorUtility.InstanceIDToObject(selectionID);
if ((o as GameObject).GetComponent<HierarchyHighlighterComponent>() != null)
{
HierarchyHighlighterComponent h = (o as GameObject).GetComponent<HierarchyHighlighterComponent>();
if (h.highlight)
{
if (Event.current.type == EventType.Repaint)
{
GUI.backgroundColor = h.color;
GUI.Box(selectionRect, "");
GUI.backgroundColor = Color.white;
EditorApplication.RepaintHierarchyWindow();
}
}
}
}
}
콘솔 읽
이미지 : HierarchyHighlighter.HierarchyWindowItem_CB (INT32 selectionID, 사각형 selectionRect) (18 자산/HierarchyHighlighter.cs AT) "개체 참조가 개체의 인스턴스에 설정되지" : Functioning as normal
는 당신의 도움을 주셔서 감사합니다!