コガネブログ

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

【Unity】【Odin - Inspector and Serializer】パラメータをタイトル付きのグループに分ける「TitleGroup」属性

目次

「TitleGroup」属性

「TitleGroup」属性を使用すると
変数をタイトル付きのグループに分けることができます

f:id:baba_s:20170719134739p:plain

using Sirenix.OdinInspector;
using UnityEngine;

public class Example : MonoBehaviour
{
    [TitleGroup( "グループ A" )] public int a1;
    [TitleGroup( "グループ A" )] public int a2;
    [TitleGroup( "グループ A" )] public int a3;
    
    [TitleGroup( "グループ B", "ここにサブタイトル" )] public int b1;
    [TitleGroup( "グループ B", "ここにサブタイトル" )] public int b2;
    [TitleGroup( "グループ B", "ここにサブタイトル" )] public int b3;
    
    [TitleGroup( "グループ C", horizontalLine:false, boldTitle:false, indent:false )] public int c1;
    [TitleGroup( "グループ C" )] public int c2;
    [TitleGroup( "グループ C" )] public int c3;
    
    [TitleGroup( "グループ D" )] public int d1;
    [TitleGroup( "グループ D" )] public int d2;
    [TitleGroup( "グループ D/Buttons", indent: false )] public void Button() { }
}

使い方

下記の様に記述するだけで使用できます

[TitleGroup( "グループ A" )] public int a1;
[TitleGroup( "グループ A" )] public int a2;
[TitleGroup( "グループ A" )] public int a3;

サブタイトルを表示したい場合は
第 2 引数に文言を設定します

[TitleGroup( "グループ B", "ここにサブタイトル" )] public int b1;
[TitleGroup( "グループ B", "ここにサブタイトル" )] public int b2;
[TitleGroup( "グループ B", "ここにサブタイトル" )] public int b3;

horizontalLine:false で水平線を非表示にできます
boldTitle:false でタイトルの文字の太字を解除できます
indent:false でグループ内の変数のインデントを解除できます

[TitleGroup( "グループ C", horizontalLine:false, boldTitle:false, indent:false )] public int c1;
[TitleGroup( "グループ C" )] public int c2;
[TitleGroup( "グループ C" )] public int c3;

グループ内にボタンを表示することも可能です

[TitleGroup( "グループ D" )] public int d1;
[TitleGroup( "グループ D" )] public int d2;
[TitleGroup( "グループ D/Buttons", indent: false )] public void Button() { }