single.php

Unity でタグを使ってGameObjectにアクセスする手順

Unityで、インスペクター[Tag]を使って C#スクリプトからGameObjectにアクセスする手順を備忘録的に投稿します。

インスペクターの[Tag]からアクセス

[階層]画面で、Scene内のGameObject(例えばPlayerなど)を選択して表示された[インスペクター]画面の上の方にある[Tag]設定。

プロジェクト作成後に追加したGameObjectには[Untagged]が設定されています。この[Tag]は追加ができます。

さらに、C# スクリプトのコードから設定したTagを使って、GameObjectにアクセスができます。

Tagを使ったアクセスを利用することで、変数化するほど頻繁にアクセスしない場合にコード量を減らすことが可能になります。

具体的には、次の方法で[タグ]の設定と、C#スクリプトからのアクセスが可能です。

1.[インスペクター]画面の[Tag]を展開して表示されたリストから[Add Tag]を選択します。

2.[Tags and Layers]画面で[Tags]の[+]をクリックして要素を追加します。

3. 追加された要素に、利用するタグの名前を入力して[Save]をクリックして保存します。

4.[インスペクター]画面の[Tag]に追加された一覧からGameObjectにタグを設定します。

5. C# スクリプトから、次のコードで設定したGameObjectにアクセスします。

GameObject.FindGameObjectWithTag("FollowCamera")

まとめ

今回はUnityで、インスペクター[Tag]を使って C#スクリプトからGameObjectにアクセスする手順について書きました。

[インスペクター]画面の[Tag]に独自のタグを追加して[FindGameObjectWithTag]を使って、C# スクリプトからGameObjectの取得が可能です。

クラス内で頻繁にアクセスしない GameObject などを[FindGameObjectWithTag]で取得することで、コード量を減らす目的で使えそうです。

UnityでインスペクターのTagを使ってGameObjectが取得したい人の参考になれば幸いです。

スポンサーリンク

最後までご覧いただき、ありがとうございます。

コメントを残す

メールアドレスが公開されることはありません。 ※ が付いている欄は必須項目です