コガネブログ

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

2020-11-24から1日間の記事一覧

【Unity】IL2CPP ビルドした環境で Odin のシリアライズ周りでエラーが発生する場合の対応方法

はじめに 例えば上記のように JobType という列挙型が存在し、 その列挙型を Dictionary で使用している CharacterData という SerializedScriptableObject が存在する場合に Example.Awake で Resources.Load を使用して CharacterData を読み込もうすると …

【Unity】Debug.Log する時に Application.logMessageReceivedThreaded を無視する方法

ソースコード using System; using System.Collections.Generic; using System.Reflection; using UnityEngine; public class Example : MonoBehaviour { private readonly List<string> m_conditions = new List<string>(); private void Awake() { Application.logMessageR</string></string>…

【Unity】StreamingAssets 内のファイルの一覧を取得できる「Better Streaming Assets」紹介

はじめに 「Better Streaming Assets」を Unity プロジェクトに導入することで StreamingAssets 内のファイルの一覧を取得できるようになります 使用例 using System.IO; using UnityEngine; public class Example : MonoBehaviour { private void Awake() {…

【Unity】CS0169 と CS0649 の警告を無効化する方法

概要 Unity プロジェクトに「csc.rsp」という名前のファイルを作成して -nowarn:0169 -nowarn:0649 「csc.rsp」ファイルに上記の記述を入力して保存することで CS0169 と CS0649 の警告を無効化できます using UnityEngine; public class Example : MonoBeha…

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

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

【Unity】エディタ拡張で Add Component のようなドロップダウンメニューを実装できる「AdvancedDropdown」

使用例 using System; using UnityEditor; using UnityEditor.IMGUI.Controls; using UnityEngine; class WeekdaysDropdown : AdvancedDropdown { public event Action<AdvancedDropdownItem> OnSelect; public WeekdaysDropdown( AdvancedDropdownState state ) : base( state ) {</advanceddropdownitem>…

【Unity】エディタ拡張でプロジェクト外のスクリプトをコンパイルできる「AssemblyBuilder」

ソースコード using System.IO; using System.Linq; using UnityEditor; using UnityEditor.Compilation; using UnityEngine; public static class AssembyBuilderExample { [MenuItem( "AssemblyBuilder Example/Build Assembly Async" )] public static vo…

【Unity】プレハブ編集中に「Hold On...」が頻繁に表示される場合

概要 Scene ビュー右上の「Auto Save」がオンになっていないかどうか確認する オンになっているとプレハブを編集するたびに保存処理が走る

【ReSharper】クラスや関数の Full Name をコピーする方法

概要 Visual Studio メニューの「RESHARPER > Edit > Copy Fully-qualified name/Source browser URI to Clipboard」を選択して コピーしたい書式を選択することで、クラスや関数の Full Bane をコピーできます 参考サイト様

【Unity】Dictionary 型に関係する汎用的な関数を管理するクラス「UniDirectoryUtils」を GitHub に公開しました

リポジトリ 使用例 通常 using System.IO; using UnityEditor; public class Example { [MenuItem( "Tools/Hoge" )] private static void Hoge() { var path = "Assets/Scripts/Example.Generated.cs"; var dir = Path.GetDirectoryName( path ); Directory.…