概要 using UnityEngine; public class Example : MonoBehaviour { private void Awake() => Log1(); [HideInCallstack] private void Log1() => Log2(); [HideInCallstack] private void Log2() => Log3(); [HideInCallstack] private void Log3() => Log4(…
これまで using UnityEngine; public sealed class Example : MonoBehaviour { private void OnDrawGizmos() { Gizmos.DrawLine( new( 0, 0 ), new( 1, 0 ) ); Gizmos.DrawLine( new( 1, 0 ), new( 1, 1 ) ); Gizmos.DrawLine( new( 1, 1 ), new( 0, 1 ) ); …
概要 using System.Linq; using UnityEngine; public sealed class Example : MonoBehaviour { [SerializeField] private Sprite m_sprite; [SerializeField] private SpriteData m_spriteData; // ScriptableObject private void Start() { // スプライトに…
概要 Unity 2022 から PolygonCollider2D などで Use Delaunay Mesh をオンにすると ポリゴン数を減らせるようになった (左がオフ、右がオン) 参考サイト様
はじめに Unity Hub でプロジェクトを開く時に コマンドライン引数で Asset Import Overrides を設定した際に プロジェクトの起動時間がどのくらい変化するかを検証してみた 検証環境 Windows 10 Unity 2021.3.1f1 Unity Accelerator 未使用 Parallel Import…
はじめに IL2CPP Code Generation を「Faster runtime」にした場合と 「Faster (smaller) builds」にした場合でビルド時間にどのような差が出るか検証してみた 検証環境 Windows 10 Unity 2021.3.1f1 WebGL ビルド 検証結果 ビルド回数 Faster runtime Faste…
はじめに WebGL ビルドで Code Optimization を「Speed」にした場合と 「Size」にした場合でビルド時間と成果物のサイズにどのような差が出るか検証してみた 検証環境 Windows 10 Unity 2021.3.1f1 WebGL ビルド ビルド時間 ビルド回数 Speed Size 1 回目 5…
はじめに Unity Search の公式の拡張機能を導入すると アセットの依存関係をグラフで可視化できるようになります 検証環境 Unity 2021.3.1f1 導入方法 上記の記事を参考にしてください 使い方 Unity メニューの「Window > Search > Dependency Graph Viewer…
はじめに Unity Search の公式の拡張機能を導入すると アセットの依存関係を簡単かつ高速に確認できます https://github.com/Unity-Technologies/com.unity.search.extensions https://github.com/Unity-Technologies/com.unity.search.extensions/wiki/depe…
概要 Unity 2021 では IL2CPP Code Generation は Build Settings で設定できたが Unity 2022 では Project Settings で設定するように変化した using UnityEditor; using UnityEditor.Build; public class Example { [MenuItem( "Tools/Hoge" )] public sta…
はじめに Project Settings の「Editor > Parallel Import」を有効にした場合と無効にした場合で プロジェクトの起動時間がどのくらい変化するか検証してみた 検証環境 Windows 10 Unity 2021.3.1f1 Library フォルダを削除した状態で起動時間を検証 検証結…
スクリプト 上記のスクリプトをシーンのゲームオブジェクトにアタッチして実行すると オブジェクトプールの動作を確認できます 実行例 プールにオブジェクトが不足している場合は新規で生成されます プールに非アクティブなオブジェクトが存在する場合は 新…
はじめに この記事では Unity Hub 3 で Unity プロジェクトを新規作成する時に 独自のプロジェクトテンプレートを選択できるようにする方法を紹介していきます 環境 Windows 10 Unity 2021.3.1f1 Unity Hub 3.1.2 手順 【Unity のインストール先】\Editor\Da…
概要 using UnityEngine; [Icon( "Assets/Icons/animal_inu.png" )] public class Example : MonoBehaviour { } Unity 2021.2 から IconAttribute を使うことで MonoBehaviour や ScriptableObject に簡単にアイコンを設定できるようになった
通常 using UnityEngine; public class Example : MonoBehaviour { public Object m_target; } SearchContext using UnityEngine; using UnityEngine.Search; public class Example : MonoBehaviour { [SearchContext( "" )] public Object m_target; } Sear…
概要 Unity 2021.2 から LINQ で ToHashSet・SkipLast・TakeLast が標準で使えるようになった (もしかしたら Unity 2021.1 から使えるかも?) using System.Linq; using UnityEngine; public class Example : MonoBehaviour { private void Start() { var …
概要 Unity 2021.2 から Dictionary の 3 つの拡張メソッドが標準で使えるようになった (もしかしたら Unity 2021.1 から使えるかも?) GetValueOrDefault Remove TryAdd using System.Collections.Generic; using UnityEngine; public class Example : Mo…
概要 Unity 2021.2 の Build Settings で設定できる Asset Import Overrides を Unity プロジェクトを開く時のコマンドライン引数で指定したい場合は Unity Hub でプロジェクトの行の右端の三点リーダを押して 「コマンドライン引数を加える」を選択して -ov…
検証内容 テクスチャと 3D モデルが合計約 4,000 個存在する Unity プロジェクトで検証 Library フォルダを削除した状態でプロジェクトを開くのにかかる時間を計測 Unity Accelerator を使う場合と使わない場合でかかった時間を比較 並列インポートの設定は…
検証内容 テクスチャと 3D モデルが合計約 4,000 個存在する Unity プロジェクトで検証 Library フォルダを削除した状態でプロジェクトを開くのにかかる時間を計測 並列インポートが有効な場合と無効な場合でかかった時間を比較 並列インポート有効時の設定…
はじめに Unity 2020 からは Preset や Preset Manager が便利になりました アセットの Preset の場合は、どのフォルダのアセットに どの Preset を反映するか設定できるようになった Preset の一部のパラメータのみを反映できるようになった この記事では P…
概要 Unity 2021.1 から、Console の「Clear > Clear on Recompile」をオンにすると コンパイル開始時に Console のログをクリアできるようになった
概要 Unity 2021.1 から、エディタのウィンドウのタブをダブルクリックすると 最大化・最小化を切り替えられるようになった
概要 using System.Text; using Unity.Profiling; using UnityEngine; public class Example : MonoBehaviour { private string m_statsText; private ProfilerRecorder m_setPassCallsRecorder; private ProfilerRecorder m_drawCallsRecorder; private Pro…
参考サイト様 Starting in 2020.2.0b2 the process of converting .NET assemblies into C++ files is multi-threaded. For 6-8 core machines the conversion process will see roughly a 60-65% decrease in conversion time. On a 64 core machine conver…
概要
概要 Hierarchy でゲームオブジェクトを作成した時に名前変更モードに入るようになった Hierarchy のタブを右クリックして「Rename New Objects」をオフにすると 名前変更モードに入らないようになります
概要 using UnityEditor; using UnityEditor.PackageManager; using UnityEngine; [InitializeOnLoad] public static class Example { static Example() { void Handle( PackageRegistrationEventArgs args ) { foreach ( var info in args.added ) { Debug.…
概要 using UnityEditor; using UnityEngine; public static class Example { [MenuItem( "Tools/Hoge" )] private static void Hoge() { Debug.Log( Selection.count ); } }
概要 using UnityEditor; using UnityEngine; public static class Example { [MenuItem( "Tools/Hoge" )] private static void Hoge() { var position = new Rect( 0, 0, 960, 1280 ); EditorGUIUtility.SetMainWindowPosition( position ); } }