Ban*_*ane 13 unity-game-engine unity3d-editor
我想让编辑器中的所有句柄显示,即使未选择给定的游戏对象,这样当鼠标点悬停在给定的句柄上时,它变得可选.我怎样才能做到这一点?
小智 1
看到这里,如何制作自定义手柄?
这里推荐JetBrains DotPeek。
要理解的最重要的事情是 (A) 使用 HandleUtility.nearestControl 和 HandleUtility.hotControl 来管理输入焦点,并通过 GUIUtility.GetControlID() 生成 ID 和 (B) 对于需要非常多的不同事件多次调用 OnSceneGUI 的方式不同的处理。
像这样使用它:
void OnSceneGui()
{
MyHandles.DragHandleResult dhResult;
Vector3 newPosition = MyHandles.DragHandle(position, size, Handles.SphereCap, Color.red, out dhResult);
switch (dhResult)
{
case MyHandles.DragHandleResult.LMBDoubleClick:
// do something
break;
}
}
Run Code Online (Sandbox Code Playgroud)