3

为了加快场景设置,我开发了一堆自定义编辑器。我想在其中一个编辑器上添加一个新功能,该功能将检测何时在 SceneView 中单击了对象(从而防止选择更改,因为此编辑器的目的是在它们之间链接对象)。

我设法通过防止从 SceneView 上的鼠标位置进行默认选择和光线投射来实现这一点。我唯一的问题是,当对象没有任何对撞机时,它将不起作用(并且在这些对象上添加对撞机是不可能的)。然而,编辑器能够在没有碰撞器的情况下检测对对象的点击。

我带来的所有 google-fu 都是“添加对撞机”方法(不可能)或“自己进行光线投射”(对我来说有点矫枉过正)。

请注意,我不是在寻找解决方法,我已经找到了一堆(所有场景对象上的 Bounds.IntersectRay、恢复选择 OnSelectionChange、使用 Selection.gameObjects 等)。出于好奇,我真的在寻找理想的解决方案(即使没有记录),以便从自定义编辑器的角度更好地了解什么是可能的或不可能的。

4

0 回答 0