トップ > 【Unity】エディター拡張方法をまとめます! > 【Unity】ボックスを表示するエディター拡張方法を紹介します!
更新日 2022/7/18

【Unity】ボックスを表示するエディター拡張方法を紹介します!

ボックスを表示するエディター拡張方法を紹介します。

BoxDrawer

Box属性を作成する

ボックス表示用のBox属性を作成します。

BoxAttribute.cs

using System;

namespace UnityEngine
{
[AttributeUsage(AttributeTargets.Field)]
public class BoxAttribute : PropertyAttribute
{
public readonly string label;
public BoxAttribute(string label)
{
this.label = label;
}
}
}

BoxDrawerの作成

ボックスを表示するのにGUI.Box関数を呼びます。
今回作成するボックスはプロパティーの変更はないのでボックス表示して終わりです。

BoxDrawer.cs

using UnityEngine;

namespace UnityEditor
{
[CustomPropertyDrawer(typeof(BoxAttribute))]
public class BoxDrawer : PropertyDrawer
{
public override void OnGUI(Rect position, SerializedProperty property, GUIContent label)
{
var box = attribute as BoxAttribute;
GUI.Box(position, box.label);
}
}
}

ボックスを表示する

Box属性の引数は表示したいラベル文字列です。

using UnityEngine;

public class TestScript : MonoBehaviour
{
[Box("Box")]
public int box;
}
BoxDrawer

中心に文字列を表示するボックス表示を紹介しました。
何に使えるのか分かりませんが、こういったものもあるということで・・・。


関連ページ


Copyright ©2022 - 2024 うにぉらぼ