Closed8

Odin (inspecter + validator)

trefuntrefun

使いそうな機能 - Type Specifics

InfoBox

[InfoBox( "文字列" )]

InfoMessageType.Warning で左の画像変更可能

Title

[Title( "タイトル" )]

[Title( "タイトル", "タイトルホルダー" )]

<h1> タグみたいなやつ。UnityEngine.TitleAttribute とかぶるので下記のように別名を付けるのはあり

using Titleh = Sirenix.OdinInspector.TitleAttribute;

AssetList

[AssetList(Path = "/Plugins/Sirenix/")]
public List<ScriptableObject> AssetList;

対象を限られたフォルダ内から選ぶ。タグ等他の要素もあり
https://odininspector.com/attributes/asset-list-attribute

ChildGameObjectsOnly

[ChildGameObjectsOnly]
public GameObject ChildGameObject;

子オブジェクトからのみ

color palette

[ColorPalette("My Palette")]
public Color MyColor;

パレットは別で作成しておく

InlineEditor

[InlineEditor(InlineEditorModes.LargePreview)]

インラインでprefab等をおなじinspecterで表示

trefuntrefun

使いそうな機能 - Essentials

ReadOnly

[ReadOnly]
public string MyString = "This is displayed as text";

インスペクターで表示されるが値は変更できない。private な要素は表示されないので public とかの要素向け。

Required

[Required]
public GameObject MyGameObject;

指定してない場合インスペクター内でエラー表示

ShowInInspector

[ShowInInspector]
private int myPrivateInt;

ReadOnly と違ってインスペクターから変更できるがシリアル化されない。private 用という感じ

trefuntrefun

使いそうな機能 - validation

ChildGameObjectsOnly

[ChildGameObjectsOnly]
public Transform ChildOrSelfTransform;

子オブジェクトからのみ

MinMaxValue

[MinValue(0)]
public int IntMinValue0;

[MaxValue(0)]
public int IntMaxValue0;

最大・最小値

Range

[Range(0, 10)]
public int Field = 2;

スライダーで決定できる

trefuntrefun

使いそうな機能 - Group/Button

Button

[Button("Name of button")]
private void NamedButton()
{
    this.Toggle = !this.Toggle;
}

関数を実行するボタン。デバッグ時に使いそう。引数も指定可能。

FoldoutGroup

[FoldoutGroup("Group 1")]
public int A;

[FoldoutGroup("Group 1")]
public int B;

あまり変更しない系をまとめて隠せる

Tab group

[TabGroup("General")]
public string playerName1;
[TabGroup("General")]
public int playerLevel1;
[TabGroup("General")]
public string playerClass1;

[TabGroup("Stats")]
public int strength1;
[TabGroup("Stats")]
public int dexterity1;
[TabGroup("Stats")]
public int intelligence1;

タブで分けられるが、毎回指定するのちょっと面倒。

trefuntrefun

使いそうな機能 - Misc, Numbers

Infobox

[InfoBox("Default info box.")]

説明文など。InfoMessageType.Warning, InfoMessageType.Error もある

Progress Bar

[ProgressBar(0, 100)]
public int ProgressBar = 50;

視覚的に変数をバーとして表示

このスクラップは2023/07/27にクローズされました