いんでぃーづスマートフォン用の表示で見るいんでぃーづゲームメインのブレブレブログ。エディタ拡張を自分で書くのは大事だなって。拡張とか敷居高いなあと思ってたんですが、ゲーム開発って自作ツールが結構重要だとひしひし感じています。拡張ってどうやるのUnityで覚えておきたい拡張方法が二つあります。ひとつはEditorウインドウ自体を新しく定義する方法。一つは、既存のインスペクタの表示方法を変える方法。Drawerで、インスペクタの一部だけ書き換えたい場合などに便利です。実はこっちのほうが敷居高いです。自分でもしょっちゅう詰まるので、実は今回は自分の備忘録だったりします。Attributeをつけます。]で囲まれているのがAttributeです。これを自作する必要があります。Attributeを定義するPropertyAttributeクラスを継承したスクリプトを作成します。この時気をつけたいのですが、このスクリプトは通常のスクリプトのディレクトリに置きましょう。Eitorディレクトリに置くとコンパイルエラーになります。Attributeの作成はこれで置いておきます。定義するインスペクターへの描画を担当するのがPropertyDrawerです。PropertyDrawerを継承したクラスを作成します。OnGUI関数をオーバーライドします。1の部分には、さきほど作成したAttributeクラスの名前を指定します。MonoBehaviourクラスと違い、OnGUIにはoverride属性を指定する必要がありますので注意。ディレクトリに置くのがいいんじゃないかなあ。シリアライズ保存したい変数にAttributeを適用するpublic変数をコンポーネントに定義し、自作したAttributeをつけましょう。属性を同時につけます。TestValue;でないとインスペクタに表示されないので注意。ここまででコンパイルエラーが出なければ、いよいよ独自ビューの描画にとりかかることができます。ここからが本番でございます。実はPropertyDrawerのOnGUI関数は、他と比べて(MonoBehaviourやEditor)ものすごくクセが強いんです。前回まででインスペクタに独自UIの入力フォームができました。はてなブログProインディーゲーム開発してます。ゲーム開発のことやらUnityまわりのことをつらつらと。当サイトの広告バナー、リンクによって提供される情報、サービス内容について、当サイトは一切の責任を負いません。当サイトの情報を元にユーザ様が不利益を被った場合にも、当サイトは一切の責任を負いません。すべて自己責任でお願いします。スターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。