コガネブログ

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

【Unity】Game ビューをフルスクリーンにするエディタ拡張

概要 https://gist.github.com/Chillu1/4c209308dc81104776718b1735c639f7 上記のサイト様で紹介されているエディタ拡張を Unity プロジェクトに追加すると Unity を再生した時に Game ビューがフルスクリーンになります もしくは Unity メニューの「Window …

【Unity】Windows ビルドした時に Steamworks.NET.txt を自動で削除するエディタ拡張

ソースコード using System.IO; using UnityEditor; using UnityEditor.Build; using UnityEditor.Build.Reporting; public sealed class SteamworksNetTxtDeleter : IPostprocessBuildWithReport { public int callbackOrder => 0; public void OnPostproce…

【Unity】Windows IL2CPP ビルドした時に生成される XXXX_BackUpThisFolder_ButDontShipItWithYourGame を自動で削除するエディタ拡張

ソースコード using System.IO; using UnityEditor; using UnityEditor.Build; using UnityEditor.Build.Reporting; public sealed class WindowsIL2CPPBuildBackUpThisFolderDeleter : IPostprocessBuildWithReport { public int callbackOrder => 0; publi…

【Unity】選択したアセットと同じ種類のアセットを Project ウィンドウで検索できるエディタ拡張「Kogane.FindTypeInProject」を GitHub で公開しました

リポジトリ 使用例

【Unity】Build Settings の設定(BuildPlayerOptions)をスクリプトから取得する方法

概要 using UnityEditor; public static class Example { [MenuItem( "Tools/Hoge" )] public static void Hoge() { var defaultBuildPlayerOptions = new BuildPlayerOptions(); var options = BuildPlayerWindow.DefaultBuildMethods .GetBuildPlayerOptio…

【Unity】TextMeshPro の FontAsset をスクリプトから更新するエディタ拡張「Kogane TMP_FontAsset Updater」を GitHub に公開しました

リポジトリ 開発環境 Windows 10 Unity 2021.2.7f1 TextMeshPro 3.0.6 基本的な使い方 using Kogane.TMP_FontAssetUpdater; using TMPro; using UnityEditor; using UnityEngine; using UnityEngine.TextCore.LowLevel; public static class Example { [Menu…

【Unity】EditorGUILayout.TextArea で範囲内に収まりきらない文字を自動改行する方法

概要 using UnityEditor; using UnityEngine; public sealed class Example : EditorWindow { private string m_text; [MenuItem( "Tools/Open" )] private static void Open() { GetWindow<Example>(); } private void OnGUI() { var style = new GUIStyle( EditorSt</example>…

【Unity】エディタ拡張で Project Template を保存する関数

ソースコード using System.Reflection; using UnityEditor; using UnityEngine.Assertions; public static class EditorUtilityInternal { public static void SaveProjectAsTemplate ( string targetPath, string name, string displayName, string descri…

【Unity】アセットの依存関係を調査できる「Dependencies Hunter Unity3D Tool」紹介

はじめに 「Dependencies Hunter Unity3D Tool」を Unity プロジェクトに導入することで アセットの依存関係を調査できるようになります クイックスタート 依存関係を調査したいアセットを右クリックして 「Find References in Project」を押して しばらく待…

【Unity】アセットの依存関係を調査できる「Asset Lens」紹介

はじめに 「Asset Lens」を Unity プロジェクトに導入することで アセットの依存関係を調査できるようになります クイックスタート 「Index Wizard」ウィンドウで「Generate」を押すと 依存関係の調査が始まるのでしばらく待ちます 調査が完了したら依存関係…

【Unity】コンパイル時間や再生までにかかった時間を閲覧できる「Mini Editor Iteration Profiler for Unity」紹介

はじめに 「Mini Editor Iteration Profiler for Unity」を Unity プロジェクトに導入することで コンパイル時間や再生までにかかった時間を閲覧できるようになります 使用例 コンパイルが完了した時に Scene ビューと Game ビューに コンパイルにかかった時…

【Unity】選択した Package を Assets フォルダに移動するエディタ拡張「Kogane Package To Asset」を GitHub に公開しました

リポジトリ 使用例 使い方 Assets フォルダに移動したい Package を右クリックして「Package to Asset」からコマンドを選択します 項目 内容 Including Dependencies 依存関係も含めて選択された Package を Assets フォルダに移動 Excluding Dependencies …

【Unity】ホットキーでシーンを開けるようになる「Hotkey Scenes Switcher」紹介

はじめに 「Hotkey Scenes Switcher」を Unity プロジェクトに導入することで ホットキーでシーンを開けるようになります クイックスタート Unity メニューの「Tools > NMJ > SceneManager > Hotkeys > Edit」を選択して ホットキーで開きたいシーンを設定す…

【Unity】エディタ上で AudioClip を再生できる「EditorAudioUtils」紹介

はじめに 「EditorAudioUtils」を Unity プロジェクトに導入することで エディタ上で AudioClip を再生できるようになります クイックスタート Project Settings の左メニューで「EditorAudioUtils」を選択して 再生したい AudioClip を設定して using JD.Ed…

【Unity】Inspector で Markdown のプレビューを確認できる「Unity Markdown Viewer」紹介

はじめに 「Unity Markdown Viewer」を Unity プロジェクトに導入することで Inspector で Markdown のプレビューを確認できるようになります クイックスタート 導入するだけで Markdown のプレビューを確認できるようになります

【Unity】.csproj の NoWarn に 0169 と 0649 を追加して警告を抑制するエディタ拡張

概要 Unity で「Suppress Common Warnings」をオンにすれば Unity 上では 0169 と 0649 の警告は出なくなるが Rider 上でビルドした場合は警告が出るので以下のエディタ拡張を作って警告を抑制 using System.IO; using System.Text; using System.Xml.Linq; …

【Unity】Unity を再生する時にプレハブモードを終了するエディタ拡張

ソースコード using UnityEditor; using UnityEditor.SceneManagement; [InitializeOnLoad] public static class Example { static Example() { EditorApplication.playModeStateChanged += change => { if ( change != PlayModeStateChange.ExitingEditMode…

【Unity】プレハブモードを終了するエディタ拡張

ソースコード using UnityEditor; using UnityEditor.SceneManagement; public static class Example { [MenuItem( "Tools/Hoge" )] public static void Hoge() { StageUtility.GoToMainStage(); } }

【Unity】AndroidManifest をコードから編集できる「AndroidManifestReflection」紹介

はじめに 「AndroidManifestReflection」を Unity プロジェクトに導入することで AndroidManifest をコードから編集できるようになります 使用例 using UnityEditor; using UTJ.Android.Extensions; internal static class Example { [MenuItem( "Tools/Hoge…

【Unity】メモリが許す限り Profile を記録できる簡易プロファイラ「UnityProfilerLiteKun」紹介

はじめに 「UnityProfilerLiteKun」は メモリが許す限り Profile を記録できる簡易プロファイラです 使用例 クイックスタート Unity メニューの「Window > UTJ > UnityProfilerLiteKun」を押して 通常の Profile と同様にビルドしたプレイヤーに接続して レ…

【Unity】Overdraw を計測して解析できる「UnityOverDrawKun」紹介

はじめに 「UnityOverDrawKun」を Unity プロジェクトに導入することで Overdraw を計測して解析できるようになります 使用例 クイックスタート 「OverdrawCamera」プレハブをシーンに配置して 「Target Display」を「Display 1」以外に変更し、 「Master Ca…

【Unity】アセットバンドルの中身の差分を比較できる「UnityAssetBundleDiffKun」紹介

はじめに 「UnityAssetBundleDiffKun」を Unity プロジェクトに導入することで アセットバンドルの中身の差分を比較できるようになります 使用例 クイックスタート Unity メニューの「Window > UTJ > UnityAssetBundleDiffKun」を選択して 表示されたウィン…

【Unity】複数解像度で Game ウィンドウをキャプチャできる「MultiScreenshotCapture.cs」紹介

はじめに https://gist.github.com/yasirkula/fba5c7b5280aa90cdb66a68c4005b52d 「MultiScreenshotCapture.cs」を Unity プロジェクトに導入することで 複数解像度で Game ウィンドウをキャプチャできるようになります クイックスタート Unity メニューの「…

【Unity】中身が同じで重複しているアセットを調査できる「DuplicateAssetDetector.cs」紹介

はじめに https://gist.github.com/yasirkula/f96802da4cf6f5fbb0c76d8322463a88 「DuplicateAssetDetector.cs」を Unity プロジェクトに導入することで 中身が同じで重複しているアセットを調査できるようになります クイックスタート Unity メニューの「Wi…

【Unity】.unitypackage を任意のフォルダに展開できる「UnitypackageExtractor.cs」紹介

はじめに https://gist.github.com/yasirkula/dfc43134fbfefb820d0adbc5d7c25fb3 「UnitypackageExtractor.cs」を Unity プロジェクトに導入することで .unitypackage を任意のフォルダに展開できるようになります クイックスタート Unity メニューの「Windo…

【Unity】ゲームオブジェクトの差分を比較できる「Unity Inspect+ Plugin」紹介

はじめに 「Unity Inspect+ Plugin」を Unity プロジェクトに導入することで ゲームオブジェクトの差分を比較できるようになります クイックスタート Unity メニューの「Window > Inspect+ > Diff Window」を選択して 表示されたウィンドウに差分を比較した…

【Unity】Missing Script やアセットの使用箇所を検索できる「Finder」紹介

はじめに 「Finder」を Unity プロジェクトに導入することで Missing Script やアセットの使用箇所を検索できるようになります クイックスタート Project ウィンドウを右クリックして「Finder」からコマンドを実行できます 「Find Missing Script ~」を選ぶ…

【Unity】Project ビューにファイルごとの Git ステータスを表示したりできる「uVCSBridge」紹介

はじめに 「uVCSBridge」を Unity プロジェクトに導入することで Project ビューにファイルごとの Git ステータスを表示したりできるようになります 使用例 Project ビューにファイルごとの Git ステータスを表示できます TortoiseGit のコマンドを実行する…

【Unity】パラメータを EditorWindow にグラフで表示できる「UnityGraphs」紹介

はじめに 「UnityGraphs」を Unity プロジェクトに導入することで パラメータを EditorWindow にグラフで表示できるようになります 使用例 クイックスタート using UnityEngine; internal sealed class Example : MonoBehaviour { private int m_hp; private…

【Unity】EditorGUIUtility.IconContent で使用できるアイコンを一覧で表示できる「UnityEditorIcons」紹介

はじめに 「UnityEditorIcons」を Unity プロジェクトに導入することで EditorGUIUtility.IconContent で使用できるアイコンを一覧で表示できるようになります 使用例 Unity メニューの「Tools > Editor Icons」を押すことで EditorGUIUtility.IconContent …