みなためラボ

【Unity】public変数をインスペクター上で非表示にする(隠す)方法

文字サイズ

はじめに

どうも! 高杉 皆為(@MinatameT)です。

Unityで「public int a」や「public float b」のように、public変数を用意すると、インスペクター上でその値を変更できるようになりますよね。

しかし、「他のスクリプトから参照したい変数をpublicにしただけなのに、インスペクター上に表示されるのは邪魔だ……」と思っている方もいらっしゃると思います。

そこで、この記事では、public変数をインスペクター上で非表示にする(隠す)方法を説明します。

超簡単なので、すぐに実施できますよ!

public変数をインスペクター上で非表示にする(隠す)方法

非表示にしたい変数の宣言の上の行に、

[System.NonSerialized]

を追加するだけです。

例えば、次のコードをご覧ください。

public double speed;

double型のpublic変数「speed」の宣言ですね。これを、非表示にしたいなら、

[System.NonSerialized]
public double speed;

と記述すればOKです。

これは1つの変数だけではなく、複数の変数にも対応していて、

[System.NonSerialized]
public double speed;
public int HP;
[System.NonSerialized]
public int score;

とすれば、「speed」と「score」がインスペクター上で非表示になります。「HP」は上の行に「[System.NonSerialized]」を記述していないので、非表示にはなりません。

複数のpublic変数を非表示にすることで、インスペクターがスッキリします。ぜひ、やってみてください。


 

みなためじゃんけん

このコーナーは、私と擬似的にじゃんけんできるコーナーです。

みなためじゃんけん、じゃんけんぽん!

私が出したのは……





パー

パーでした! チョキの勝利です!



この記事をSNSでシェアする

プログラミングカテゴリーの最新記事(5件)

最新記事(10件)

管理人のTwitter

内部リンク集