コガネブログ

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

【Unity】ホットキー、エディタ拡張、ユーティリティなどの便利機能がセットになった「UniPrep」紹介

はじめに

「UniPrep」はホットキー、エディタ拡張、ユーティリティなどの
便利機能がセットになったプロジェクトです

ホットキー

f:id:baba_s:20180516200603p:plain

エディタ拡張

ImmediateWindow

f:id:baba_s:20180516200752p:plain

f:id:baba_s:20180516200801p:plain

LogCatWindow

f:id:baba_s:20180516200850p:plain

f:id:baba_s:20180516200858p:plain

uGUI

f:id:baba_s:20180516201030p:plain

ユーティリティ

Monitor

using UniPrep.Utils;
using UnityEngine;

public class Example : MonoBehaviour
{
    private void Start ()
    {
        gameObject
            .AddMonitor()
            .HandleCollisionEnter( collision =>
            {
                var name = collision.collider.name;
                Debug.Log( "衝突しました:" + name );
            } );
    }
}

MonoBehaviourHelper

using UnityEngine;
using UniPrep.Utils;

public class Example : MonoBehaviour
{
    private class Data
    {
        public Data()
        {
            var i = MonoBehaviourHelper.Instance;
            i.updateEvent       += OnUpdate;
            i.fixedUpdateEvent  += OnFixedUpdate;
        }

        private void OnUpdate() { }
        private void OnFixedUpdate() { }
    }

    private void Start()
    {
        var sub = new SubscriberExample();
    }
}

Work

using System.Collections;
using UniPrep.Utils;
using UnityEngine;

public class Example : MonoBehaviour
{
    private void Start()
    {
        var work = new Work<string>( DelayedMessage() );
        work.Begin( result => print( result ) );
    }

    private IEnumerator DelayedMessage()
    {
        yield return new WaitForSeconds( 1 );
        yield return "ピカチュウ";
    }
}