【Unity】Tag / Layer / LayerMask の使い分け
Tag / Layer / LayerMask とは? Unityでオブジェクトを扱っていると、「これは敵かどうか判定したい」「カメラに映すものを制限したい」「Raycastで特定の対象だけ拾いたい」といった場面が出てきます。
これらを実現するために用意されているのがTag、Layer、LayerMaskの3つです。
役割を一言でまとめると以下のようになります。
機能 役割 主な用途 Tag オブジェクトを文字列で識別する プレイヤーや敵の判定、Find系メソッド Layer オブジェクトを整数で分類する Cameraの描画制御、Physicsの衝突制御 LayerMask 複数のLayerをビット表現で扱う Physics.RaycastなどのAPI引数 どれも似ているように見えますが、それぞれ得意な領域があります。
どの場面でどれを使うのか、順を追って見ていきます。
Unity Docs Unity - Manual: Tags and Layers project settings reference docs.unity3d.com