よく読まれている記事
1Unityプログラミング
【超初心者向け】UniTaskのインストール方法から基本的な文法・使い方をマスターしよう
2Unity基本編
死ぬほど重いUnityエディタを高速化する3つの方法
4Unityアニメーション
【Unity】AnimationClipの使い方を初心者向けに徹底解説
5UnityでUI開発
【Unity UI】ボタンが反応しない原因をランキング形式で紹介【保存版】
実機だけ「敵IDが未定義」:アプリ同梱データとリモート配信データの食い違い
エディタでは動くのに、iOS実機だけ「敵IDが未定義」でバトルに入れない。原因はアプリ同梱の敵定義とAddressablesでリモート配信するクエストデータの更新タイミングのずれでした。調べ方、再ビルドでの対処、エラー文の改善、配信経路をそろえる設計の注意点をまとめます。
AIにUnityを操作させたら全コマンドがタイムアウト:見えないモーダルダイアログが原因だった
Claude CodeからuLoopMCP経由でUnityを操作していたら、compileやログ取得がすべてタイムアウトするようになりました。原因は前面に出ていないモーダルダイアログ。CGWindowListCopyWindowInfoとscreencaptureで隠れたダイアログを見つけて閉じる方法と、AIに押させないダイアログのルールをまとめます。
JenkinsのUnityビルドが毎回40分:git cleanとLibraryキャッシュをシンボリックリンクで両立した
JenkinsのUnityビルドが毎回25〜41分かかっていた原因は、Clean before checkoutがLibraryフォルダを消していたことでした。Cleanを外してサブモジュールのビルドが全滅した失敗と、Libraryの実体をワークスペースの外に置いてシンボリックリンクで両立した方法、さらにAndroid・iOSのアプリビルドを約45分から約7分20秒まで縮めた工夫をまとめます。
Pack Separatelyはファイルが多すぎ、Pack Togetherは丸ごと落ちる:Addressablesをラベル単位のbundleに分けた
AddressablesのグループがPack Togetherだと、キャラ1体分だけ落としたくてもグループ全体がダウンロードされます。Pack Separatelyはファイル数が多すぎて使えませんでした。間を取るPack Together By Labelでキャラ・敵ごとのbundleに分けた手順と、一括DL用ラベルとの併用、ビルドせずに分かれ方を試算する方法、依存アセットの重複、ステージをPack Separatelyに分けた続報までまとめます。
AnimationClipの参照切れはnullにならない:消えたGUIDを指したままNREが遠くで起きた
アセットに保存されたAnimationClipの参照が、存在しないGUIDを指したまま残り、Playableで再生した先でNullReferenceExceptionが出た事例です。fileID 0の検索では見つからない参照切れの原因と、.metaのGUID集合と突き合わせて数秒で全件洗い出すPythonスクリプト、再発を防ぐリネームのやり方をまとめます。
【Addressables】最新の4.xにしなかった理由:エディタ同梱版・独自ビルドスクリプト・CHANGELOGで決めた
Unity 6000.3でAddressables 2.9.1を使うプロジェクトで、最新の4.xに上げるべきかを調べました。エディタ同梱版の確認、独自ビルドスクリプトへの影響、各バージョンのCHANGELOGの比較から、4.xを見送って2系の保守版を選んだ判断の流れをまとめます。
一度もアクティブにならなかったMonoBehaviourはOnDestroyが呼ばれない(UniTaskループが残る罠)
非アクティブな親の下にInstantiateされ、一度もアクティブにならなかったMonoBehaviourは、Destroyしても OnDestroy が呼ばれず destroyCancellationToken もキャンセルされません。UniTaskのループが破棄後も回り続ける罠と、親を一度アクティブにしてから生成する対処法を、勇者のどうぐ屋さんのマップビューアの実例で解説します。
【Unity】CanvasScalerで描くUI画面の拡大率を、正投影カメラのsizeにそろえる
uGUIのCanvasScaler(Scale With Screen Size・Expand)で描いているマップの拡大率を、ワールド空間の正投影カメラのsizeに換算する方法をまとめました。画面に映るマス数の計算式と、CanvasScalerの設定値をEditModeテストで固定するやり方を紹介します。
【Addressables】AssetGroupにアセットを追加したのにロード失敗する件
Addressablesのグループを新しく追加したのに、ビルドするとグループごと対象から外れて実機でロードできませんでした。原因はAddressableAssetSettings.assetのm_GroupAssetsへの登録行をコミットし忘れていたこと。Hash行のノイズを避ける運用が招いた漏れと、エディタで気付けなかった理由、再発防止のルールをまとめます。
【Unity】Resourcesフォルダに何でもかんでも配置していませんか?
UnityのResourcesフォルダには、Resources.Loadでパス指定して読むアセットだけを置けば十分です。TimelineやVFXのPrefab・Materialなど、GUIDで参照されるだけのアセットはResources外に出してもビルドに含まれます。勇者のどうぐ屋さんのバトル演出アセットを整理した実例と、移動時の落とし穴をまとめました。











