渋谷ほととぎす通信

新しいこと、枯れたこと問わず大庭が興味を持ったものを調査、生活の効率を求める完全趣味の技術ブログ。基礎を大事にしています。

Unity PolygonCollider2DのEditColliderができなくなる条件


UnityのPolygonCollider2Dはインスペクタからドラッグで感覚的にコライダーのメッシュを作ることができます。

f:id:esakun:20191204005621p:plain
ピンクの枠部分をクリックすると、シーンビューにコライダーのハンドルが表示されます。

f:id:esakun:20191204010009g:plain
このようにSpriteRendererで表示している2DオブジェクトのPolygonColliderを感覚的に編集することができます。


ここから本題ですが、とある条件でコライダーのハンドルが表示されなくなるトラブルに見舞われます。

インスペクタを複数立ち上げるとダメ

複数のインスペクタウィンドウをUnityEditor上に作成してしまうと、Unityのバグなのか、うまく動かなくなります。

個人的によくあるケースとしては、インスペクタを複数立ち上げないといけない作業をした後、そのまま放置してしまい、「EditColliderのハンドルが出てこない!!!!」ってなります。

インスペクタ、シーンビュー共に1つずつにしてみる

おそらくEditColliderしたときのイベントがシーンビューにうまく通知していないのかなという予測をたてています。
インスペクタ、シーンビュー共に1つずつにしてあげると、本件のトラブルは避けられるのではないかなと思います。


以上です。

環境

  • Unity2019.2.8f1 (Unity2018.3でも発生していた)