コガネブログ

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

【Unity】CanvasScaler を指定したパラメータでリセットするエディタ拡張

ソースコード

using UnityEditor;
using UnityEngine;
using UnityEngine.UI;

public static class Example
{
    [MenuItem( "CONTEXT/CanvasScaler/Default" )]
    private static void Default( MenuCommand command )
    {
        var scaler = command.context as CanvasScaler;
        Undo.RecordObject( scaler, "Canvas Scaler Default" );
        scaler.uiScaleMode = CanvasScaler.ScaleMode.ScaleWithScreenSize;
        scaler.referenceResolution = new Vector2( 1920, 1080 );
        scaler.screenMatchMode = CanvasScaler.ScreenMatchMode.Expand;
        scaler.referencePixelsPerUnit = 100;
    }
}

使い方

上記のスクリプトを Unity プロジェクトの「Editor」フォルダに追加して

f:id:baba_s:20180131142149p:plain

Canvas Scaler を右クリックして「Default」を選択すると

f:id:baba_s:20180131142220p:plain

Canvas Scaler を指定したパラメータでリセットできるようになります

参考ツイート