Unity编辑器扩展_视图SceneView操作和定位代码附送Gizmos实现代码

这个Unity编辑器扩展

_视图SceneView 的高级操作

一般程序员可能一辈子都不会碰到

我主要实现了一个自定义,笔刷,非“”美术笔刷素材“”,也非北大青鸟的“自定义”,“编程”

这某大神的分享,该注意的都说了,确实.y 要翻转一下,才能正确定位

Editor 视图扩展代码

我们可以通过在OnSceneGUI周期函数下面加这句代码来屏蔽关掉Unity默认的鼠标选择功能:

void OnSceneGUI(){
    HandleUtility.AddDefaultControl(GUIUtility.GetControlID(FocusType.Passive));
}

还有一点我们在实现笔刷功能需要注意的就是鼠标射线检测的功能,我们在获取Scene窗口下的鼠标位置的时候需要对y轴进行一次反转,这样再进行屏幕射线检测才能获得正确的结果:

private Vector2 GetMousePos()
{
    var mousePos = Event.current.mousePosition;
    mousePos.y = Camera.current.pixelHeight - mousePos.y;
    return mousePos;
}

Ca

猜你喜欢

转载自blog.csdn.net/avi9111/article/details/109047742#comments_22243944