docs.unity3d.com
    目次を表示する/隠す

    カスタム変数型用にカスタム PropertyDrawer を作成する

    Visual Scripting でカスタムクラスからカスタム型を使用したい場合で、そのソースコードにアクセスできない場合は、カスタムの PropertyDrawer が必要になります。

    PropertyDrawer がないと、エディター内でカスタム型に値を割り当てたり、カスタム型を持つ変数の値を初期化したりすることができません。

    Note

    カスタム型のクラスは、カスタム PropertyDrawer を作成するための [Serializable] タグをソースコード内に持っている必要があります。

    カスタム PropertyDrawer の作成は、以下の手順で行えます。

    1. (任意) Project ウィンドウがまだ開かれていない場合は、Window > General > Project を開くか、Ctrl + 5 (macOS: Cmd + 5) を押してください。

    2. Project ウィンドウのフォルダーリスト内、または Project ウィンドウのプレビューペイン内の任意の場所で右クリックし、Create > C# Script を選択してください。

    3. 新しいスクリプトファイルの名前を入力し、Enter を押してください。
      例えば、Counter という名前の新しいカスタム型用に PropertyDrawer を作成したい場合は、CounterDrawer というスクリプト名も使用できます。

    4. 新しい C# ファイルをダブルクリックしてください。Unity によって、Preferences (環境設定) の External Script Editor の項目下に指定されたプログラムでファイルが開かれます。Unity のスクリプトエディターに関する詳細は、Unity ユーザーマニュアルの 統合開発環境 (IDE) サポート を参照してください。

    5. スクリプトファイルから、Start および Update 関数と、そのコメントを削除してください。

    6. 以下を新しい public class が定義されている行の上に追加してください。その際、<Counter> を、この PropertyDrawer に割り当てたい型の (Unity に表示される通りの) 名前に置き換えてください。

      [CustomPropertyDrawer](type of(<Counter>))]
      
    7. 新しい public class を定義する行の最後で、Monobehavior を PropertyDrawer に変更してください。

    カスタム PropertyDrawer の作成を続行する方法は、表示する必要のあるフィールドと、それをエディターのインターフェースにどのように表示したいかによって変わります。例えば、PropertyDrawer の作成に UIElements モジュールを使用する場合も、特定のフィールドの表示に Unity の IMGUI モジュールを使用する場合もあります。

    カスタム PropertyDrawer の作成に関する詳細は、基本の Unity スクリプトリファレンスの PropertyDrawer クラス とその関連メソッドに関するセクションを参照してください。

    Note

    カスタム PropertyDrawer を作成したら、必要な追加的プロパティプロバイダースクリプトを Visual Scripting の Project Settings から再生成する必要があります。詳細は Visual Scripting のプロジェクト設定 を参照してください。

    トップに戻る
    Copyright © 2023 Unity Technologies — 商標と利用規約
    • 法律関連
    • プライバシーポリシー
    • クッキー
    • 私の個人情報を販売または共有しない
    • Your Privacy Choices (Cookie Settings)