【Unity】classに付与する属性2024/08/03属性とは? Unityではなく、C#の機能として属性というものがあります。 以前にはUnityのインスペクタを拡張する属性について説明しました。 【Unity】インスペクタを拡張する属性 - GARNET LOG 属性を使ってインスペクタをより使いやすくしよう GARNET LOG 今回はコンポーネントに付与する属性について説明します。UnityC#
【Unity】インスペクタを拡張する属性2024/06/02属性とは? Unityではなく、C#の機能として属性(Attribute)というものがあります。 Attribute クラス (System) カスタム属性の基本クラスを表します。 learn.microsoft.com 属性とはクラス、メンバー(フィールドやメソッドなど)に追加の情報を与えるためのものです。 例えば、以下の様なコードに含まれる[SerializeField]の部分です。 private void Player : MonoBehaviour { [SerializeField] private int _hp; } 通常、private変数はシリアライズされずインスペクタ上にも表示されません。 [SerializeField] が指定されている場合は、インスペクタ上に表示され、編集した結果もシリアライズされるため、 シーンやプレハブ中で保持されるようになります。UnityC#
【Unity】Flags属性について2024/05/18はじめに C#には、enum(列挙型)というものがあります。 以下の様に記述します。 public enum JobType { Fighter = 0, Magician, Preast, Thief, Paladin, } 定数をまとめたような型で、列挙型に含まれる定数を列挙子といいます。 Fighterに0を指定してますが、0であれば省略できます。 以降の列挙子は1ずつ増えていくので、 Magicianは1,Preastは2となっています。 ゲーム中でよく使う職業や属性をint型としておくより、専用の列挙型を用意してあげると、 コード上分かりやすくなります。 連番の定数を沢山定義している場合は列挙型を使えないか検討しましょう。UnityC#
【Unity】public変数をやめよう2024/01/27アクセス修飾子 C#を初めとしてプログラミング言語には、アクセス出来る範囲を指定するアクセス修飾子 というものがあります。 アクセス修飾子 - C# reference アクセス修飾子 - C# リファレンス learn.microsoft.comUnityC#