使い方

プロパティ
  • SerializeField
  • HideInInspector
クラス
  • Serializable

ドキュメント:

属性 | Unity マニュアル [公式]

参考:

Attribute – 属性とは | kan のメモ帳

Attribute – 早く知りたかった – Qiita

インスペクター拡張用の属性について | Uinty 使い方ガイド

Attribute で Inspector の表示変更 | 操作を忘れてしまうので。

7 Useful Unity Attributes that Make the Inspector Easier to Use (Elnur) | Star Gazers

Header 属性

ドキュメント:

HeaderAttribute | Unity スクリプトリファレンス [公式]

参考:

Inspector のコメント/ヘッダ表示を編集する | MR が楽しい

Range 属性

ドキュメント:

UnityEngine.RangeAttribute | Unity スクリプトリファレンス [公式]

参考:

インスペクターでスライダーを使う | Senchan Office

SerializeField 属性

ドキュメント:

SerializeField | Unity スクリプトリファレンス [公式]

参考:

private 変数を Inspector で編集する | コガネブログ

SerializeField は、簡単に外部ファイルを実行できて便利 – Qiita

FormerlySerializedAs 属性

ドキュメント:

Serialization.FormerlySerializedAsAttribute | Unity スクリプトリファレンス [公式]

参考:

SerializeField などで設定した値を保存したまま変数名を変更する方法 | 夜中に Unity

カスタム属性

属性を定義する。

using System;

[AttributeUsage(AttributeTargets.All, AllowMultiple = false, Inherited = true)]
class ExampleAttrAttribute : Attribute
{
    private string str;

    public ExampleAttrAttribute(string str)
    {
        this.str = str;
    }
}Code language: C# (cs)

属性を使用する。

public class Example
{
    [ExampleAttr("hoge")]
    public int foo = 123;
}Code language: C# (cs)
Property Attribute

プロパティに付与する属性を作成する場合は、PropertyAttribute クラスを継承する。

Property Drawer

属性を付与したプロパティに関して、インスペクターの表示をカスタマイズする場合は、PropertyDrawer クラスを継承したカスタムプロパティドロワーを定義する。カスタムプロパティドロワークラスには、CustomPropertyDrawer 属性を付与する。

こちらのページを参照

ドキュメント:

Property Drawer | Unity マニュアル [公式]

UnityEngine.PropertyAttribute | Unity スクリプトリファレンス [公式]

UnityEditor.PropertyDrawer | Unity スクリプトリファレンス [公式]

AttributeTargets 列挙型 | Microsoft Learn [公式]

参考:

カスタム属性の基礎知識コンプリートガイド – Qiita

PropertyAttribute – 自作 Attribute の作り方とその応用例 | はなちるのマイノート

Custom Attribute と Custom Property Drawer を組み合わせたら Inspector がうまく表示されなくなった件と対応方法 | LIGHT11

How to write a custom attribute? – Unity Answers

コード:

PropertyAttribute.cs – GitHub

属性を付与したフィールドの情報を取得する

参考:

隣の Serialized Property を知りたくて | 徳島ゲーム開発ごっこ

custom attribute code -> look at the field that it was associated with – Stack Overflow

まとめ

属性についてまとめてメモる | テラシュールブログ

Untiy 開発で早く知りたかった Attribute – Qiita

Inspector ウィンドウでの表示に関わる Attribute のまとめ | エクスプラボ

チュートリアル

Improve Your Inspector with Attributes (Jason Weimann)

Using Attributes (Otter Knight)

Using Attributes to Manage Data (Game Dev Guide)

Attributes that Save Time (Jason Weimann)

3 Tips to Escape Inspector Panel Hell (Lost Relic Games)

Conditional Hide Attribute

参考:

Hiding or Disabling inspector properties using Property Drawers | Brecht Lecluyse

Markup Attributes

リポジトリ:

gasgiant/Markup-Attributes: A Editor Extension for Customizing Inspector Layout with Attributes – GitHub

Naughty Attributes

リポジトリ:

dbrizov/NaughtyAttributes: Attribute Extensions – GitHub

Not Null Attribute

参考:

Null の場合に警告を出す Attribute | うにてぃブログ

記事をシェアする:
タグ:

コメントを残す

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

Protected by reCAPTCHA