プランナー向けUnity TIPS紹介 ①NaughtyAttributes

プランナー向けUnity TIPS紹介 ①NaughtyAttributes

プランナーもUnityを使いこなすことができるとプロトタイピングに役立ちます。業務内容にもよりますが、ちょっとした遊びの検証が一人でできると非常に便利です。ここではプロトタイピングに役立つ機能や、使い方を紹介していきたいと思います。

第一回としてInspectorにボタンを追加できるNaughtyAttributesを紹介します。

NaughtyAttributes概要

NaughtyAttributes はInspectorを強化できる拡張機能で、Inspector上にボタンを追加できのが便利です。

真面目にやるなら、ボタンUIを作って押したら AddForce()関数を呼び出すなどとやる必要がありますが、
こんな感じでちょっとテストしたい機能を実行するのに便利です。

インストール

AssetStoreを利用するか、パッケージマネージャーにURL指定でインストールすることができます。

AssetStore利用

NaughtyAttributes から無料で導入できます。

URLを指定してPackageManagerからインストール

https://github.com/dbrizov/NaughtyAttributes.git#upm を指定してAddすればOK

UnityEditorメニューの Window → Package Manager
PackageManagerウィンドウの + を押して、「Add package from git URL…」を選択
URLを入力していAddを押す
インストールが終わって詳細が表示されたら完了

使い方

やってることは2行だけ、 using NaughtyAttributes;[Button("AddForce")]だけです。

using UnityEngine;
using NaughtyAttributes;

public class ForceAdder : MonoBehaviour
{
    public Vector3 m_force;
    private Rigidbody m_rigidbody;

    private void Awake()
    {
        m_rigidbody = GetComponent<Rigidbody>();
    }

    [Button("AddForce")]
    public void AddForce()
    {
        m_rigidbody.AddForce(m_force, ForceMode.Impulse);
    }
}

Inspectorにボタンができるので、Force に力を加えたい値を入力してAddForceボタンを押すと……

こんな感じにCUBEを転がすことができます。

Buttonの書式

引数にボタン名称を指定できるけど、書かなかったら関数名になるぞ

public class NaughtyComponent : MonoBehaviour
{
	[Button]
	private void MethodOne() { }

	[Button("Button Text")]
	private void MethodTwo() { }
}

ほかにも便利な機能があるけど、そういうのはプログラマが使いこなせばいいと思います。

まとめ

  • NaughtyAttributes のButton を使うと、ちょっとしたテスト関数を簡単に実行できる
  • インストールは、Unity Assets Storeか、PackageManagerにURL直接指定でOK

他にもプロトタイピングに使えそうなネタを紹介していきたいと思います。