コガネブログ

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

【おすすめスライド】「【Unity道場】ゲーム制作に使う数学を学習しよう」

スライド

【おすすめスライド】「Unity2019 注目機能まとめ」

スライド

【Unity】Unity 2019.3b 新機能 - Git からパッケージを追加する

概要 Unity メニューの「Window > Package Manager」から パッケージマネージャを開いて「+ > Add package from git URL...」を押して Git の URL(.git で終わる文字列)を入力すると Git からパッケージを追加できます

【Unity】Unity 2019.2 新機能 - テンプレートからスクリプトを作成できる「ProjectWindowUtil.CreateScriptAssetFromTemplateFile」

概要 using UnityEditor; public static class Example { [MenuItem( "Tools/Hoge" )] private static void Hoge() { ProjectWindowUtil.CreateScriptAssetFromTemplateFile ( "Assets/template.cs.txt", "Assets/NewScript.cs" ); } } ProjectWindowUtil.Cr…

【Unity】Unity 2019.2 新機能 - Android において画面の輝度を取得できる「Screen.brightness」

概要 using UnityEngine; using UnityEngine.UI; public class Example : MonoBehaviour { public Text m_text; private void Update() { m_text.text = Screen.brightness.ToString(); } } Screen.brightness を使用すると Android において画面の輝度を取…

【Unity】Unity 2019.2 新機能 - Inspector における列挙型の要素の表示名を変更できる「InspectorNameAttribute」

概要 using UnityEngine; public enum JobType { [InspectorName( "王国兵士" )] SOLDIER, [InspectorName( "魔法使い" )] SORCERER, [InspectorName( "狩人" )] HUNTER, } public class NewBehaviourScript : MonoBehaviour { public JobType m_jobType; }

【Unity】Unity 2019.2 新機能 - Missing なスクリプトを削除できる「GameObjectUtility.RemoveMonoBehavioursWithMissingScript」

概要 using UnityEditor; using UnityEngine; public static class Example { [MenuItem( "Tools/Hoge" )] private static void Hoge() { var go = Selection.activeGameObject; var count = GameObjectUtility.RemoveMonoBehavioursWithMissingScript( go )…

【Unity】Unity 2019.2 新機能 - Missing なスクリプトの数を取得できる「GameObjectUtility.GetMonoBehavioursWithMissingScriptCount」

概要 using UnityEditor; using UnityEngine; public static class Example { [MenuItem( "Tools/Hoge" )] private static void Hoge() { var go = Selection.activeGameObject; var count = GameObjectUtility.GetMonoBehavioursWithMissingScriptCount( go…

【Unity】Unity 2019.2.0 新機能 - UIElements の実装サンプルがエディタ上から閲覧できるようになった

概要 Unity メニューの「Window > UI > UIElements Samples」を選択すると UIElements の実装サンプルを閲覧できます コードをコピーすることも可能です

【Unity】Unity 2019.2.0 新機能 - uGUI のオブジェクトを作成した時にデフォルトプリセットが適用されるようになった

概要 例えば Raycast Target をオフにした Image のプリセットを デフォルトに登録している状態で Hierarchy の Create メニューから Image を作成すると デフォルトプリセットが適用されてRaycast Target がオフになります

【Unity】日本語がサポートされた Unity Hub v2.0 のベータ版をインストールする

概要 https://forum.unity.com/threads/unity-hub-v2-0-beta-is-now-available-for-download.650455/ 上記のページから、日本語がサポートされた Unity Hub v2.0 のベータ版をインストールできます

【Unity】ゲームオブジェクトを複製した時にスケール値に誤差が発生する現象が Unity 2018.3.3 で直った?

概要 Editor: Fix issue where duplicating GameObjects could slightly alter the Transform values (typically scale) due to floating point precision issues caused by temporarily reparenting as part of the duplication code. (912111) ゲームオブ…

【Unity】Unity 2019.2.0a6 新機能 シーン遷移にかかった時間の内訳を Editor.log で閲覧できるようになった

概要 Console ウィンドウを右クリックして 「Open Editor Log」を選択した時に表示される Editor.log で LightmapEditorSettings: switching bake backend from 1 to 0. Unloading 26 Unused Serialized files (Serialized files now loaded: 0) UnloadTime:…

【Unity】Unity 2018.1 新機能 iOS / Android で「GUIUtility.systemCopyBuffer」を使用すると文字列をクリップボードにコピーできる

概要 using UnityEngine; public class Example : MonoBehaviour { private void Awake() { GUIUtility.systemCopyBuffer = "ピカチュウ"; } } Unity 2018.1 から GUIUtility.systemCopyBuffer を使用すると iOS でも Android でもクリップボードに文字列を…

【Unity】Unity 2018.3 新機能「Application.consoleLogPath」コンソールログの出力先のパスを取得できる

概要 using UnityEngine; public class Test : MonoBehaviour { private void Awake() {; Debug.Log( Application.consoleLogPath ); } } コンソールログの出力先のパスを取得できる「Application.consoleLogPath」が (おそらく)Unity 2018.3 から追加され…

【Unity】Unity 2018.3 新機能 uGUI の Image で不透明部分のみを描画できるようになった

概要 uGUI の Image の Inspector に「Use Sprite Mesh」という項目が追加されました この項目をオンにすると不透明部分のみを描画できるようになります 使用例 Use Sprite Mesh オフ 透明部分も描画されています Use Sprite Mesh オン 不透明部分のみが描画…

【Unity】Unity 上で Android の logcat が実行できるパッケージが Package Manager からインストールできるようになった(現在はプレビュー版)

はじめに https://docs.unity3d.com/Packages/com.unity.mobile.android-logcat@0.1/manual/ Unity 上で Android の logcat が実行できるパッケージが Package Manager からインストールできるようになっていました 2018/12/25 現在はプレビュー版となってお…

【Unity】Unity 2019.1a 新機能 自作したエディタ拡張をエディタのツールバーから呼び出せるようになった

概要 Unity 2019.1a から自作したエディタ拡張を エディタのこの部分から呼び出せるようになりました 例えばこのような EditorTool 属性やクラスを使用したスクリプトを Unity プロジェクトの「Editor」フォルダに追加すると ボタンを押した時に表示されるメ…

【Unity】Unity 2018.3 から自動実装プロパティに SerializeField 属性を付与して Inspector に表示できるようになった

概要 公式で意図されたものかどうかはわからないですが using UnityEngine; public class Example : MonoBehaviour { [field: SerializeField] public int Health { get; private set; } } このように自動実装プロパティに SerializeField 属性を付与すると …

【Unity】iOS / Android でプッシュ通知を実装できるパッケージが Package Manager からインストールできるようになった(現在はプレビュー版)

はじめに https://docs.unity3d.com/Packages/com.unity.mobile.notifications@1.0/manual/ iOS / Android でプッシュ通知を実装できるパッケージが Package Manager からインストールできるようになっていました 2018/12/18 現在はプレビュー版となっており…

【Unity】Unity 2018.3 で Project Settings ウィンドウに独自のメニューを追加する方法

はじめに Unity メニューの「Edit>Project Settings...」から表示できる Project Settings ウィンドウには独自のメニューを追加できます 追加方法 上記のような SettingsProvider を継承したクラスを定義して さらに SettingsProvider 属性を適用した static…

【Unity】エディタ上でコンパイル無しでコードを実行できる拡張機能のパッケージが Package Manager からインストールできるようになった(現在はプレビュー版)

はじめに https://docs.unity3d.com/Packages/com.unity.immediate-window@0.1/manual/ エディタ上でコンパイル無しでコードを実行できる拡張機能のパッケージが Package Manager からインストールできるようになっていました 2018/12/17 現在はプレビュー版…

【Unity】公式ドキュメントで公開されている Unity 2018.3 へのアップグレードガイド

概要 https://docs.unity3d.com/Manual/UpgradeGuide20183.html 上記の公式ドキュメントで Unity 2018.3 へのアップグレードガイドが公開されています

【Unity】新しい Memory Profiler のパッケージが利用可能になった(現在はプレビュー版)

はじめに https://forum.unity.com/threads/new-memory-profiler-preview-package-available-for-unity-2018-3.597271/ 新しい Memory Profiler のパッケージが利用可能になりました 2018/12/14 現在はプレビュー版となっております 導入方法 2018/12/14 現…

【Unity】エディタ拡張でコルーチンを使用できるパッケージが Package Manager からインストールできるようになった(現在はプレビュー版)

はじめに https://docs.unity3d.com/Packages/com.unity.editorcoroutines@0.0/manual/ エディタ拡張でコルーチンを使用できるパッケージが Package Manager からインストールできるようになっていました 2018/12/14 現在はプレビュー版となっております イ…

【Unity】Unity 2018.3 新機能 ガベージコレクションを無効化できる API が追加された

はじめに Unity 2018.3 からガベージコレクションを無効化できる API が追加されました 使い方 UnityEngine.Scripting 名前空間に存在する GarbageCollector クラスを使用します using UnityEngine.Scripting; ... // ガベージコレクションを有効化 GarbageC…

【Unity】Unity 2019.1.0a8 新機能 GC スパイクを避けられる Incremental Garbage Collection が使用できるようになった

概要 Unity メニューの「Edit>Project Settings...」の「Player」タブから 「Use incremental GC (Experimental)」をオンにすることで GC スパイクを避けることができる Incremental Garbage Collection が使用できるようになります

【Unity】Unity 2019.1.0a10 新機能 Scene ビューでオブジェクトを表示するかどうかを Hierarchy で変更できるようになった

概要 Unity 2019.1.0a10 から Scene ビューでオブジェクトを表示するかどうかを Hierarchy で変更できるようになりました

【Unity】Unity 2019.1.0a10 新機能 Console のコールスタックをクリックしてソースコードの関数呼び出しの行にジャンプできるようになった

概要 Unity 2019.1.0a10 から Console のコールスタックをクリックして ソースコードの関数呼び出しの行にジャンプできるようになりました

【Unity】Unity 2018.3.0b8 新機能「NET_LEGACY」.NET 3.5 を使用するプロジェクトで有効になるシンボル

はじめに Unity 2018.3.0b8 から「NET_LEGACY」シンボルが追加されました 概要 using UnityEngine; public class Example : MonoBehaviour { private void Awake() { #if NET_LEGACY Debug.Log( "ピカチュウ" ); #endif } } 「NET_LEGACY」は .NET 3.5 を使…