シーンのセットアップを高速化するために、多数のカスタム エディターを開発しました。これらのエディターの 1 つに、SceneView でオブジェクトがクリックされたことを検出する新しい機能を追加したいと考えています (このエディターの目的は、それらの間でオブジェクトをリンクすることであるため、選択の変更を防ぎます)。
SceneView 上のマウスの位置からのデフォルトの選択とレイキャスティングを防ぐことで、それを達成することができました。私の唯一の問題は、オブジェクトにコライダーがない場合、機能しないことです (これらのオブジェクトにコライダーを追加することは問題外です)。それでも、エディターはコライダーなしでオブジェクトのクリックを検出できます。
私が持ってきたすべてのグーグルフーは、「コライダーを追加する」アプローチ(不可能)または「独自のレイキャスティングを行う」(私の好みには少しやり過ぎです)です。
回避策を探しているわけではないことに注意してください。すでにそれらの束を見つけました (すべてのシーン オブジェクトの Bounds.IntersectRay、選択の OnSelectionChange の取り消し、Selection.gameObjects の使用など)。カスタムエディターの観点から何が可能か不可能かをよりよく理解するために、好奇心から理想的な解決策(文書化されていなくても)を本当に探しています。