コガネブログ

平日更新を目標に Unity や C#、Visual Studio、ReSharper などのゲーム開発アレコレを書いていきます

【Unity】Inspector で各種パラメータをプルダウンメニューで選択できる PropertyAttribute のコレクション「Unity Forge Property Drawers」紹介

はじめに

「Unity Forge Property Drawers」は Inspector で
各種パラメータをプルダウンメニューで選択できる PropertyAttribute のコレクションです

使用例

AnimationName

f:id:baba_s:20180104152402p:plain

[SerializeField, AnimationName]
private string animationName;

下記のように記述することも可能です

[SerializeField]
private Animation exampleAnimation;
[SerializeField, AnimationName(animationField: "exampleAnimation")]
private string animationName;

AnimatorLayerName

f:id:baba_s:20180104152411p:plain

[SerializeField, AnimatorLayerName]
private string layerName;

AnimatorParameterName

f:id:baba_s:20180104152425p:plain

[SerializeField, AnimatorParameterName(AnimatorControllerParameterType.Float)]
private string exampleFloatParameterName;

下記のように記述することも可能です

[SerializeField]
private Animator exampleAnimator;
[SerializeField]
[AnimatorParameterName(AnimatorControllerParameterType.Float, animatorField: "exampleAnimator"))]
private string exampleFloatParameterName;

AnimatorStateName

f:id:baba_s:20180104152435g:plain

[SerializeField, AnimatorStateName]
private string stateName;

下記のように記述することも可能です

[SerializeField]
private Animator exampleAnimator;
[SerializeField, AnimatorStateName(animatorField: "exampleAnimator")]
private string exampleStateName;

GameObjectLayer

f:id:baba_s:20180104152502p:plain

[SerializeField, GameObjectLayer]
private int exampleLayer;

GameObjectTag

f:id:baba_s:20180104152512p:plain

[SerializeField, GameObjectTag]
private string exampleTag;

SortingLayerName

f:id:baba_s:20180104152522p:plain

[SerializeField, SortingLayerName]
private string exampleSortingLayerName;

SpriteAtlasSpriteName

f:id:baba_s:20180104152531p:plain

[SerializeField]
private SpriteAtlas atlas;
[SerializeField, SpriteAtlasSpriteName(spriteAtlasField: "atlas")]
private string spriteName;

関連記事