C#
Unity

Untiy開発で早く知りたかったAttribute(属性)


Attributeとは?

「UnityのInspector上で特別な挙動を設定することができたりするもの」

ぐらいの感覚でいいと思う最初は。


[SeriarizeField]

Inspectorにprivateで定義した変数を表示できる。

これが一番使います!


test.cs

[SeriarizeField]

private int private_int;


[HideInInspector]

Inspectorにpublicで定義した変数でも表示させないことができる。

あまり使った記憶がない、、、


test.cs

[HideInInspector]

public int public_int;


[DLLImport("")]

自分で作成したdllをunityで使いたい時。

ここは、また別の記事でご紹介できれば考えています!


test.cs

[DLLImport("dll")]

//dll内の関数
public static extern int Add(int a, int b);


[Tooltip("")]

Inspectorに設定している変数名にマウスオーバーすると("")内の文字が表示されます。


test.cs

[Tooltip("ツールチップ")]

//dll内の関数
public int tooltip_int;


[Header("")]

Inspectorの変数の上にヘッダーをつけることができます。

変数名でどういう数値か理解しづらい場合に使ってます。


test.cs

[Header("ヘッダー")]

//dll内の関数
public int header_int;


[Space]

Inspectorで表示される変数と変数の感覚を開けることができる。


test.cs

private int a;

[Space]

private int b;



合わせて使うこともできる!

上で、紹介したAttributeは複数を同時に使うこともできます!

各Attribute宣言の区切りで,(カンマ)を入れればOK!


test.cs

[SerializeField,Header("イントだよ"),Tooltip("ツールチップもついてるよ")]

private int test_int;


参考画像

スクリーンショット 2019-02-07 19.56.21.png


仕事でunityを使うようになってから知ったAttributeを知った

便利なものはどんどん使おう!

他にもAttributeはたくさんありますが、私がよく使うものをご紹介させていただきました!