コガネブログ

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

【Unity】Unity 2020.1 新機能 - CS0169 と CS0649 の警告を無効化できるようになった

概要 Unity メニューの「Edit > Project Settings...」から Project Settings ウィンドウを開いて 左メニューから「Player」を選択して「Suppress Common Warnings」をオンにすることで CS0169 と CS0649 の警告を無効化できます using UnityEngine; public …

【Unity】Unity 2020.1 新機能 - 単一行シリアライズ

概要 これまでは Unity がアセットの YAML を保存する時は 一行80文字を超えた場合に改行されていたが Unity 2020.1 からは80文字制限が無くなってシリアライズの処理が高速になったらしい これまで m_MySerializedReference: {fileID: 10304, guid: a2eb3ee…

【Unity】2020.2b 新機能 - エディタの UI の色や形をスタイルシートで変えられる

はじめに Unity プロジェクトの Assets フォルダに「Editor/StyleSheets/Extensions」フォルダを作って その中に「common.uss」を追加してコードを記述することで エディタの UI の色や形を変えられます :root { --unity-metrics-default-border_radius: 12p…

【Unity】Unity 2020.2b 新機能 - Profiler の情報をランタイムで取得できる「ProfilerRecorder」

使用例 using System.Text; using Unity.Profiling; using UnityEngine; public class Example : MonoBehaviour { private string m_text; private ProfilerRecorder m_totalUsedMemoryRecorder; private ProfilerRecorder m_totalReservedMemoryRecorder; p…

【Unity】Unity 2020.1 新機能 - エディタのレイアウトを好きなフォルダに保存・読み込みできる

概要 Unity エディタ右上のプルダウンメニューから「More」を選択して Save to disk...:現在のエディタのレイアウトを .wlt ファイルで保存 Load from disk...:.wlt ファイルからエディタのレイアウトを読み込み できるようになりました

【Unity】Unity 2020.1 新機能 - ゲームオブジェクトを原点(0, 0, 0)に生成できるようになった

概要 Unity の「Preferences > General」の「Create Objects at Origin」をオンにすると Hierarchy の「Create Empty」でゲームオブジェクトを作成した時に 原点(0, 0, 0)に生成されるようになります

【Unity】Unity 2020.1 へのアップグレードガイド

概要 上記ページで Unity 2020.1 へのアップグレードガイドを確認できる

【Unity】Unity 2020.1 に合わせて更新された Unity マニュアル

概要 上記ページで Unity 2020.1 に合わせて更新された Unity マニュアルを確認できる 参考サイト様

【Unity】エディタ上でのスクリプト関連の操作でなぜ処理に時間がかかっているのか確認できる「Editor Iteration Profiler」紹介

はじめに 現在、「Editor Iteration Profiler」と呼ばれるエディタ用のプロファイラが開発されています 「Editor Iteration Profiler」を Unity プロジェクトに導入することで スクリプトをコンパイルした時になぜ時間がかかっているのか Unity を再生する時…

【Unity】Unity 2020.2 新機能 - アセットの名前変更と移動操作で元に戻すとやり直しがサポート

概要 Unity 2020.2 からアセットの名前変更と移動操作で 元に戻すとやり直し(Undo・Redo)ができるようになりました

【Unity】Unity 2020.2 新機能 - 最近開いたシーンを Unity メニューから開けるようになった

概要 Unity メニューの「File > Open Recent Scene」から 最近開いたシーンを開けるようになりました

【Unity】Unity 2020.2b 新機能 - デフォルトの親オブジェクトを指定できるようになった

概要 Hierarchy でゲームオブジェクトを選択した状態で 「右クリック > Set as Default Parent」を選択すると そのゲームオブジェクトが太字で表示されるようになり その状態でゲームオブジェクトを作成すると 指定したゲームオブジェクトが自動で親に設定さ…

【Unity】Unity 2020.2b 新機能 - Hierarchy で空の親オブジェクトを作成できるようになった

概要 Hierarchy でゲームオブジェクトを選択した状態で 「右クリック > Create Empty Parent」を選択すると 選択したゲームオブジェクトを子に持つ親オブジェクトを作成できます

【Unity】Unity 2020.2b 新機能 - プレハブがインポートされた時に呼び出される「AssetPostprocessor.OnPostprocessPrefab」

概要 using UnityEditor; using UnityEngine; public class Example : AssetPostprocessor { private void OnPostprocessPrefab( GameObject root ) { root.AddComponent<BoxCollider>(); } } プレハブがインポートされた時に呼び出される関数 「AssetPostprocessor.OnPos</boxcollider>…

【Unity】Unity 2020.2b 新機能 - デフォルトで配列やリストを Inspector で並べ替えられるようになった

概要 Unity 2020.2a では「Reorderable」属性を変数に適用すれば 配列やリストを Inspector で並べ替えられるようになりましたが、 Unity 2020.2b では「Reorderable」属性を適用しなくても デフォルト動作で並び替えができるようになりました using System.…

【Unity】Unity 2020.2a から C# 8.0 の機能がいくつか使用できるようになった

はじめに Unity 2020.2a から C# 8.0 の機能がいくつか使用できるようになりました マイクロソフトの公式ページで C# 8.0 の新機能が紹介されておりますが、 この新機能の中から、現時点で使用できることが確認できた機能と 使用できなかった機能をいくつか…

【Unity】Unity 2020.1 新機能 - 「Prefab Mode in Context」

概要 例えばシーンにこのようなオブジェクトが存在しており、 中央のテキストオブジェクトがプレハブの場合に プレハブのインスタンスの編集画面をそのまま開くと 現在のシーンが Scene ビューに表示された状態でプレハブを編集できるようになり、 Alt キー…

【Unity】Unity 2020.1 新機能 - Scene ビューのカメラ設定ウィンドウに独自の GUI を追加できるようになった

概要 using UnityEditor; using UnityEngine; [InitializeOnLoad] public static class Example { static Example() { SceneViewCameraWindow.additionalSettingsGui += OnGUI; } private static void OnGUI( SceneView sceneView ) { GUILayout.Label( "ピ…

【Unity】New Scene ダイアログを無効化する方法

概要 新しいシーンを作成する時に表示される New Scene ダイアログを無効化したい場合は Unity メニューの「Edit > Project Settings...」を選択して 表示された「Project Settings」ウィンドウで「Scene Template」を選択して 「New Scene Menu」を「Builtin…

【Unity】Unity 2020.1 新機能 - スクリプトから Preset を適用する時にパラメータの除外を指定できるようになった

ソースコード using UnityEditor.Presets; using UnityEngine; public static class PresetUtils { public static bool ApplyToWithExclusion ( Preset preset, Object target, params string[] excludedProperties ) { var current = preset.excludedProper…

【Unity】エディタ右下に非同期タスクの進捗を表示できる「Progress」を使いやすくするクラス

ソースコード 使用例 using Kogane; using System.Collections; using Unity.EditorCoroutines.Editor; using UnityEditor; using UnityEngine; public sealed class Example : EditorWindow { [MenuItem( "Tools/Open" )] private static void Open() { Get…

【Unity】Unity 2020.1 新機能 - エディタ右下に非同期タスクの進捗を表示できる「Progress」クラスが追加された

概要 using System.Collections; using Unity.EditorCoroutines.Editor; using UnityEditor; using UnityEngine; public sealed class Example : EditorWindow { [MenuItem( "Tools/Open" )] private static void Open() { GetWindow<Example>(); } private void OnGU</example>…

【Unity】Unity 2020.2.0a18 新機能 - IL2CPP ビルドでスクリプトの変更がなければ高速にビルドされるようになった

概要 https://forum.unity.com/threads/0-change-rebuilds-in-il2cpp-now-available-in-unity-2020-2-0a18.937100/ Unity 2020.2.0a18 からスクリプトを変更していない状態で IL2CPP ビルドする場合、 高速にビルドされるようになった これでアセットの編集…

【Unity】Unity 2020.2a 新機能 - 配列やリストを Inspector で並べ替えられるようにする「Reorderable」属性

概要 using System.Collections.Generic; using UnityEngine; public class Example : MonoBehaviour { [Reorderable] public string[] m_names; [Reorderable] public Vector3[] m_positions; [Reorderable] public List<Color> m_colors; } 参考サイト様</color>

【Unity】Unity 2020.1 新機能 - RectMask2D でソフトマスクが使用できるようになった

概要

【Unity】Unity 2020.1 新機能 - Console ウィンドウのログが複数選択可能 + コピーできる

概要 ピカチュウ UnityEngine.Debug:Log (object) Example:Awake () (at Assets/Example.cs:9) ピカチュウ UnityEngine.Debug:Log (object) Example:Awake () (at Assets/Example.cs:9) ピカチュウ UnityEngine.Debug:Log (object) Example:Awake () (at Ass…

【Unity】Unity 2020.1 新機能 - Inspector で Vector、Color、UnityEngine.Object、Gradient、AnimationCurve などがコピペできるようになった

概要 using UnityEngine; public class Example : MonoBehaviour { public Vector3 m_vector; public Color m_color; public Example m_example; public Material m_material; public Gradient m_gradient; public AnimationCurve m_curve; }

【Unity】Unity 2020.1 新機能 - ビルド時にプリプロセッサ定義を指定できる「BuildPlayerOptions.extraScriptingDefines」

概要 Unity 2020.1 以前 using UnityEditor; [InitializeOnLoad] public static class Example { static Example() { PlayerSettings.SetScriptingDefineSymbolsForGroup ( BuildTargetGroup.Android, "ENABLE_RELEASE;ENABLE_OFFLINE" ); var options = new…

【Unity】Unity 2020.1 新機能 - .unitypackage でインポートしたアセットの一覧を取得できる「onImportPackageItemsCompleted」

概要 using UnityEditor; using UnityEngine; [InitializeOnLoad] public static class Example { static Example() { AssetDatabase.onImportPackageItemsCompleted += paths => { foreach ( var path in paths ) { Debug.Log( path ); } }; } }

【Unity】Unity 2020 新機能 - ゲームオブジェクトの Cut & Paste が可能

概要 (Unity 2020.1 で追加されたか 2020.2 で追加されたかは未確認) Ctrl + X、Ctrl + V でも使用可能