「Unity Screen Navigator」リリースに寄せて - OSSにした理由や設計意図

Unity用の画面遷移OSSライブラリ「Unity Screen Navigator」リリースしました。 使い方はREADMEに全部書いてしまったので、本記事ではOSSにした理由や設計意図について簡単にまとめます。 はじめに Unity Screen Navigatorとは? なぜOSSで公開するのか なぜ…

【Rider】任意の拡張子やファイル名を指定したファイル形式として取り扱う方法

Riderで任意の拡張子やファイル名を指定したファイル形式として取り扱う方法です。 やりたいこと 任意の拡張子にファイル形式を紐付ける 任意のファイル名でも指定可能 参考

【Unity】オーバードローを正確に測定できるOSS「UnityOverDrawKun」の紹介

Unityでオーバードローを正確に測定できるOSS「UnityOverDrawKun」の紹介です。 UnityOverDrawKun? 使い方 SceneViewのOverdrawモードとの違いについて URPでも使える? 関連 参考

【Unity】Unity Editorでコルーチンが使える「Editor Coroutines」の使い方まとめ

Unity Editorでコルーチンが使える「Editor Coroutines」の使い方をまとめました。 Editor Coroutines? インストール EditorWindowでコルーチンを使う EditorCoroutineUtilityを直接使う オーナーを持たないEditiorCoroutineUtility.StartCoroutineOwnerless…

【.NET】Object.GetHashCodeの結果は実際結構被る

.NETのObject.GetHashCodeの結果は実際結構被るというお話です。 Object.GetHashCode() 実際どれくらい被るのか

【Unity】Profilerで細かい処理時間の計測はCustomSamplerを使うのが手っ取り早い

UnityのProfilerで細かい処理時間の計測はCustomSamplerを使うのが手っ取り早いという話です。 はじめに 重い処理を計測する Deep Profilingする CustomSamplerを使う 関連 参考

【Unity】【シェーダ】インラインサンプラーステートを使ってテクスチャのWrap ModeやFilter Modeをシェーダで指定する

Unityでインラインサンプラーステートを使ってテクスチャのWrap ModeやFilter Modeをシェーダで指定する方法についてまとめました。 サンプラーステートをシェーダで指定する シェーダを書く 結果 参考

【Unity】【エディタ】Missingになっているコンポーネントを取得・削除する

UnityのエディタでMissingになっているコンポーネントを取得・削除する方法についてまとめました。 コンポーネントがMissingとは? 取得・削除する この機能はUnity2019から 関連 参考

【Unity】URPのParticlesシェーダのDistortion機能の使い方と注意点まとめ

UnityのURPのParticlesシェーダのDistortion機能の使い方と注意点についてまとめました。 はじめに 使い方 Camera Opaque Textureを有効化する マテリアルをつくる 重ねた時の注意点 描画順に関する注意点 手前にあるオブジェクトに関する注意点 画面端でエ…

【Unity】【URP】Texture2DArrayをシェーダでサンプリングする

UnityのURPで、Texture2DArrayをサンプリングするシェーダを作る方法についてまとめました。 はじめに Texture2DArrayを作る サンプリングするシェーダを書く 結果 関連 参考

【Unity】【URP】Texture3Dをシェーダでサンプリングする

UnityのURPで、Texture3Dをサンプリングするシェーダを作る方法についてまとめました。 はじめに Texture3Dを作る サンプリングするシェーダを書く 結果 関連 参考

【Unity】Unity2020.2からTexture2DArrayやTexture3Dがインポート設定で作れるようになってた

Unity2020.2からTexture2DArrayやTexture3Dがインポート設定で作れるようになってた話です。 Texture2DArray?Texture3D? いままではスクリプトで作るしかなかった インポート設定から作れるようになった 参考

【Unity】【エディタ】WindowsとMacでパスを正しく取り扱う

はじめに プラットフォームとディレクトリ区切り文字 プラットフォーム依存問題 UnityのAPIとパス .NETとパス Unityでパスを正しく扱う 関連 参考

【VSCode】VSCodeでLuaエディタlua-language-serverを使う

Lua

VSCodeでLuaエディタlua-language-serverを使う方法についてまとめました。 lua-language-server? 導入 Emmyアノテーションについて .lua以外の拡張子をluaとして認識させたい 関連 参考

【Unity】【エディタ】Preset ManagerでAddコンポーネント時・アセットインポート時のデフォルト値を設定する

UnityのPreset ManagerでAddコンポーネント時・アセットインポート時のデフォルト値を設定する方法についてまとめました。 できることの例 コンポーネントアタッチ時のデフォルト値を設定 アセットインポート時のデフォルト値を設定 ScriptableObject作成時…

【VSCode】任意の拡張子やファイル名を指定したファイル形式として取り扱う方法

VSCodeで任意の拡張子やファイル名を指定したファイル形式として取り扱う方法です。 やりたいこと Settingsから編集する方法 settings.jsonを直接編集する方法 任意のファイル名でも指定可能 UserとWorkspace

【Unity】URPでDeferred Renderingの概要を学んでサクッと使う

UnityのUniversal Render Pipeline(URP)でDeferred Renderingの概要を学び、簡単に使うところまでをまとめました。 はじめに Forward RenderingとDeferred Rendering URPにおけるForward Renderingとの違い リアルタイムライトが多数使える 半透明描画はForw…

【Unity】コルーチンのエラーハンドリングをやりやすくする拡張メソッド

Unityでコルーチンのエラーハンドリングをやりやすくする拡張メソッドをつくってみました。 課題 実装 使う

【Unity】Unity2021.2の新機能を組み合わせてインポート時間を最速化する

Unity2021.2の新機能を組み合わせてインポート時間を最速化する方法をまとめました。 はじめに インポート時にワーカープロセスを立ち上げる Asset Import Overrideでテクスチャのインポートを高速化する Import Activity Windowでインポート時間を分析する …

【Unity2021.2新機能】各アセットのインポート時間が一覧表示できるImport Activity Window

Unity2021.2新機能である、各アセットのインポート時間が一覧表示できるImport Activity Windowについてまとめます。 はじめに 使い方 重いインポート処理を書いてみる OnPostprocessAllAssetsで書いた処理は計上されないので注意 参考

【Unity2021.2新機能】Asset Import Overrideでテクスチャのインポートを高速化する

Unity2021.2新機能であるAsset Import Overrideでテクスチャのインポートを高速化する方法をまとめます。 Asset Import Override? 使い方 プロジェクトを開く際に有効化する ビルドにも影響するので注意 関連 参考

【Unity】Unity HubのAdvanced Project Settingsでプロジェクトを開く際のコマンドライン引数を指定する

Unity HubのAdvanced Project Settingsでプロジェクトを開く際のコマンドライン引数を指定する方法です。 Advanced Project Settings 使ってみる 参考

【Unity】【エディタ拡張】TimelineのClipの見た目を拡張する

UnityでTimelineのClipの見た目を拡張する方法についてまとめました。 やりたいこと Clipの見た目を拡張する DrawBackgroundでできないことはClipDrawOptionsで Clipのライフサイクルイベント ソースコード全文 関連

【Unity】Android App BundleとPlay Asset Deliveryの概要をサクッと学ぶ

Android App BundleとPlay Asset Deliveryの概要を簡単にまとめます。 はじめに - 今後は使われないOBB Android App Bundle Play Asset Delivery 参考

【Unity】【xLua】LuaとC#をまたいでオブジェクト指向な実装をする

xLuaでLuaとC#をまたいでオブジェクト指向な実装をする方法についてまとめました。 xLua? 課題 Luaにおけるオブジェクト指向 特定の環境の変数にだけ値を代入する 関連

【Unity】【エディタ拡張】複数のカスタムPropertyAttributeを作るとPropertyDrawerが競合する問題とその対応策

Unityで複数のカスタムPropertyAttributeを作るとPropertyDrawerが競合する件とその対応策についてまとめます。 問題点 ソースコード EnabledIfAttributeをMultiPropertyAttributeで実装する NormalizedAnimationCurveAttributeをMultiPropertyAttributeで実…

【Unity】Unity2020.1からProfilerがスタンドアロンで起動可能に、プロファイリング時のノイズが減少

Unity2020.1からProfilerがスタンドアロンで起動可能になり、プロファイリング時のノイズを減らすことができるようになりました。 はじめに 起動方法 参考

【Unity】【エディタ拡張】AnimationCurveを正規化するアトリビュートを作る

Unityのエディタ拡張でAnimationCurveを正規化するアトリビュートを作る方法についてまとめます。 やりたいこと ソースコード 使い方 関連

【Unity】Visual Scripting(旧Bolt)でScript Machineのカスタムユニットを作成する方法まとめ

UnityのVisual Scripting(旧Bolt)でScript Machineのカスタムユニットを作成する方法をまとめました。 はじめに ログ出力を行うユニットを作成する 加算するユニットを作る 1秒後にログ出力する、コルーチン用のユニットを作る ユニットのヘッダで値を設定で…

【Lua】Luaでオブジェクト指向プログラミングをする

Lua

Luaでオブジェクト指向プログラミングをする方法についてまとめます。 はじめに メタテーブル メタテーブルの__indexキーについて オブジェクト指向プログラミング 関連 参考