Unity 6.6がリリース!CoreCLR移行に向けた基盤強化と2D・グラフィックス・UI関連の強化など

2026年9月1日(現地時間)- Unity Technologiesは、ゲームエンジン「Unity」の最新バージョンとなる「Unity 6.6」をリリースしたことを発表しました。

目次

新機能ハイライト

Unity 6.6は、次期LTS(長期サポート)版であるUnity 6.7が登場するまでの間、LTS版と同等水準のサポートと安定性を提供する「Supported release」として位置付けられています。

今回のアップデートでは、日々の制作を加速させるEditorワークフローの改善やビルド分析ツールの刷新をはじめ、2D・グラフィックス・UI関連の多彩な新機能、さらにはWeb・モバイル・コンソール向けプラットフォームへの最適化まで、制作パイプライン全体に及ぶ幅広い領域で機能強化が行われています。

イントロダクション
Fast Enter Playモード
Dictionaryのシリアライズ対応
ビルド分析(Build Analysis)
Content Directories
ビルド&ランタイムサイズ
プロファイラーの改善
新しいヒエラルキー
選択履歴
Entities – 新ヒエラルキー対応
アニメーションウィンドウの検索機能
Graph Toolkitの改善
Compute Light Baker
2Dシャドウ(GPUスキニング)
2D Rendering Layers
Delaunay分割
VFX GraphからShader Graphを作成
Shader Graph – プロモートプロパティ
Shader Graph – サブグラフの非推奨化機能
Shader Graph – プリプロセッサディレクティブ
Shader Graph – パーティクルテンプレート
DX12向けDXCコンパイラ
2Dプロファイラの追加機能
UI Toolkit – バックドロップフィルター
UI Toolkit – プロファイリングの改善
UI Toolkit – メッシュ変更
uGUI – セーフエリアコンポーネント
uGUI – 最大幅/最大高さ
uGUI – RectTransformのフィッティング
WebGPUがプロダクション対応に
プラットフォーム・Web・モバイルの更新
Unityのバージョン運用について

以下では、公式より公開された主な変更点と注目ポイントを詳しくご紹介します。

CoreCLR移行に向けた基盤整備

Unity 6.6には、次世代アーキテクチャ「Unity 7」で予定されているCoreCLRへの完全移行に向けた布石となる変更が含まれています。

CoreCLRは、Microsoftが開発・提供するオープンソースの.NETランタイム(実行エンジン)です。現在、最新の.NETプラットフォーム(.NET Core以降)の心臓部として機能しており、C#コードをマシンコードへと変換・実行するための基盤となります。Unityではこれまで長年にわたりMonoランタイムをベースとしてきましたが、10年以上ぶりの大刷新としてCoreCLRへの置き換えが進められています。

Fast Enter Play Mode

新規作成プロジェクトにおける「Enter Play Mode」の既定設定が、C#ドメインの完全リロードを省略し、シーンのみを再読み込みする「Reload Scene Only」へと変更されました。従来のドメインリロードではC#コード全体の再コンパイル・再読み込みが走り待機時間が発生していましたが、これをスキップすることでEditモードからPlayモードへの切り替えが高速化されます。

将来的にUnity 7への移行を予定している場合は、この設定を前提としたコード側の対応を早めに済ませておくと移行がスムーズになります。

Native Dictionaryのシリアライズ

MonoBehaviourやScriptableObjectなどのDictionaryフィールドに [SerializeField] 属性を付けるだけで、ラッパー構造体などを自作せずにInspector上で編集・保存できるようになりました。

Inspectorには2カラムのリスト形式でキーと値が表示され、キーが重複した場合は通知されます。対応していないキー/値の型はコンパイル時に検出されるほか、ネストしたDictionaryや折りたたみ表示、キー名・値ラベルなど表示のカスタマイズにも対応しています。

Project Auditorの強化

CoreCLRへの移行準備やFast Enter Play Modeの導入に伴い、既存スクリプトやプロジェクト設定が新仕様に適合しているかを自動検証する「Project Auditor」の重要性が大きく高まっています。Unity 6.6では、静的解析機能とアップグレード互換性診断が大幅に強化されました。

メニューの Window > Analysis > Project Auditor から解析を実行することで、ドメインリロード省略時に意図しない状態残存を引き起こすstaticフィールドや、将来の移行で非推奨となるAPIを素早く特定できます。さらに近年の機能強化により、診断された問題箇所に対してAIを活用したコード修正案を提示する機能も導入されており、大規模プロジェクトにおける移行検証の工数を大幅に圧縮できます。

【Tips】staticフィールドのリセットとProject Auditorでの検出

・AutoStaticsCleanup:ドメインリロードを省略した場合、静的(static)フィールドの値がPlayモード終了後もメモリ上に保持され続け、予期せぬ状態残存によるバグの原因となります。Unity 6.5から導入されたライフサイクル管理機能により、Playモード終了時に自動でリセットしたいstaticフィールドには AutoStaticsCleanup 属性を、意図して値を維持したいフィールドには NoAutoStaticsCleanup 属性を付与することができます(※対象クラスは partial 修飾子にする必要があります)。

・ルール「UAL0013」による一括特定とジャンプ:既存プロジェクト内で対応が必要な箇所を手動で探すのは困難ですが、Project Auditorの「Domain Reload」解析項目(ルールID: UAL0013)を実行すれば、属性の付与が必要なstaticフィールドや自動プロパティ、イベントを一括でリストアップできます。該当箇所をダブルクリックするだけで問題のコードへ直接ジャンプでき、AIが提示するクリーンアップ属性の追加案をそのまま反映させることでスムーズに対処を完了できます。

アセットとメディア関連の強化

アセットの肥大化やビルド時間の長期化は、近年の3D・ゲーム制作における大きな課題です。Unity 6.6では、ローカルコンテンツの管理パイプラインとビルドの可視化機能が刷新されました。

コンテンツディレクトリ

ローカルコンテンツ向けの新しい管理方式「Content Directories」が導入されました。バンドルの構成をあらかじめ決めておく必要がなく、実際に必要なアセットだけをロードできるほか、アセットの自動重複排除やロード時間の短縮、メモリオーバーヘッドの低減といった利点があります。

既存のAddressablesワークフローにも同じAPIのまま組み込め、AssetBundleグループは右クリックメニューから変換可能です。なお、AssetBundle自体が廃止されるわけではなく、リモートコンテンツを扱う既存プロジェクトでは引き続き利用できます。

Build Analysis

ビルド履歴を一覧化し、ビルドタイプ、ターゲットプラットフォーム、成否ステータス、合計容量、ビルド所要時間、出力先パスなどを一元管理できる新しい専用ウィンドウ(Build Analysisウィンドウ)が追加されました。

容量の大きいアセットや依存関係の長いチェーンを可視化し、ビルド失敗の原因を切り分けることができます。Build Stepsビューでは各ステップの所要時間や警告を、Assetsタブでは依存関係付きのアセット一覧を確認できます。Content Directoriesと組み合わせれば、ビルド間の差分比較も行えます。

エディターとワークフロー

新しいHierarchyウィンドウが標準に

これまで試験的なオプトイン機能だった新設計のHierarchyウィンドウが、Unity 6.6よりデフォルトとなりました。

オブジェクト数が膨大な大規模シーンでの描画パフォーマンスが向上したほか、深い階層でも見通しやすい横スクロール、ドラッグで並び替え可能なカスタム列表示、エディタ拡張のための公開APIなどが備わっています。なお、従来の使い勝手を好むチームのために、Preferences設定から従来のクラシック表示へ戻すことも可能です。

Editorの選択履歴ナビゲーション

Unityツールバーに、選択履歴を「戻る」「進む」で辿れるボタンが追加されました。

InspectorやProjectウィンドウで選択した直近50件までの履歴を記録しており、Ctrl+Shift+[ ]/Ctrl+Shift+](macOSはCmd+Shift+[ ]/Cmd+Shift+])のショートカットや、Edit > Previous Selection/Next Selectionメニューからも操作できます。

2D機能とプロファイラの拡充

2Dゲーム開発における表現力向上と負荷管理を両立するため、ライティング、シャドウ、および専用プロファイラモジュールが大幅に強化されています。

2Dライティングのレンダリングレイヤー対応

2Dライトが従来のソートレイヤー(Sorting Layer)に加え、レンダリングレイヤー(Rendering Layer)による影響範囲の制御に対応しました。

これにより、描画順序を崩すことなく、「特定のキャラクターのみを照らすライト」や「特定の前景オブジェクトのみに当たるライト」といった柔軟なライティング設計が可能です。さらに、シーンで使用されていない2Dライティング機能に関連するシェーダーバリアントを自動除外する機能も備わり、シェーダーのコンパイル負荷を軽減できます。

GPUスキニング下での2Dシャドウ

従来はGPUスキニングを有効化すると、スキニング処理されたスプライトから2Dシャドウを落とすことができない制限がありました。Unity 6.6ではこの制約が解消され、頂点スキニングの重い負荷をCPUからGPUへとオフロードしながら、陰影豊かなリアルタイム2Dライティング効果を両立できるようになりました。

新プロファイラモジュール

Profilerに2D特化の3つのモジュールが追加されました。

2D Animationモジュール:SpriteSkinの変形負荷、頂点処理、ボーン行列計算の所要時間をCPU/GPU別に分析。

Sprite Editorワークフローの改善

Sprite Editorのスキニングエディタでは、スプライトにホバーするとハイライト表示されるようになり、複数レイヤーのキャラクターを効率よく識別・編集できるようになりました。ズーム範囲の設定を柔軟に変更できるようになったほか、ソースファイルのデータを誤って編集しないよう既定で保護される機能も追加されました(Project Settingsから上書き可能)。

またScene view上のオーバーレイでボーンカラーを編集できるようになっています。

Delaunay分割によるスプライトメッシュ生成

スプライトのメッシュ生成方式として、新たに「Delaunay分割」が追加されました。スプライトの輪郭により忠実にフィットし、補間に適した均一な形状の三角形を生成します。

頂点がより均一に分布するため、ボーンやシェーダーによる変形の見た目が向上するほか、テクスチャのUV座標も頂点間でより適切にブレンドされます。

Tilemapワークフローの改善

Tile Paletteウィンドウに、名前によるフィルタリング機能と、ブラシ・パレットをアクティブなタイルマップにロックする機能が追加されました。Preferencesウィンドウ内のGrid Brushタブでは、フィルエリアのプレビューの表示切り替えや制限、Scene view上でのブラシ名表示といった新しいオプションが利用できます。またEditor Diagnostics Preferencesウィンドウでは、サポート報告用にタイルマップのチャンクをScene view上にデバッグ表示できるようになりました。

グラフィックス関連の新機能

ライティングベイク、URP診断、シェーダーコンパイルパイプラインにもアップデートが行われています。

新しいライトベイクエンジン

ライトマップ、ライトプローブ、Adaptive Probe Volume(APV)を生成する新しいベイクシステムとして、SRP CoreのCompute Shaderと統合レイトレーシングAPIを活用した「Unity Compute Light Baker」が搭載されました。

新しいエンジンは、従来のProgressive Light Bakerに比べてサンプリング精度が高く、広大なオープンワールドや大規模建築シーンのベイクを安定して高速処理できます。Graphics Project Settingsからプロジェクト全体の標準ベイカーとして指定可能です。

なお、これに伴い従来のProgressive CPU Light Bakerは非推奨となり、Unity Compute Light BakerまたはProgressive GPU Light Bakerへの移行が推奨されています。アルゴリズムの違いにより影の減衰や光の回り込みに変化が生じる場合があるため、既存シーンのベイク設定には適宜パラメータの調整が推奨されています。

グラフィックス診断とURPパフォーマンスツールの拡充

Project Auditor内にURP設定の不整合をビルド前に自動検出する「URP Settings Analyzer」が追加されました。またProfilerでは、大規模描画を効率化する「GPU Resident Drawer」のカバレッジ率、カリングLOD、パイプラインのタイミングが詳細に確認可能です。

Frame Debuggerは定数バッファ(Constant Buffer)内のフィールド名と実際の数値を展開表示できるようになり、シェーダーのデバッグ効率が大幅に向上しました。

さらにURPでは、対応GPUにおいてタイルメモリから深度バッファを直接読み取ることが可能になり、深度ベースのフォグやスモーク表現で発生するメモリ帯域幅を抑制できます。

Shader Graph・VFX Graph・Shurikenの連携強化

Visual Effect Graphの出力ブロックから、互換性を持つShader Graphを直接ワンクリックで生成できるようになりました。Shader Graph内のサブグラフから昇格させたプロパティやキーワードもVFX Graph側からそのままリアルタイムにコントロール可能です。

また、Shader Graph本体にはGraph Settings上でプリプロセッサディレクティブ(#pragma、#include、#define)を直接記述できる機能や、古いサブグラフに非推奨マークを付与する仕組みが追加されました。Shurikenパーティクル向けには、GPUインスタンシング対応のURP専用テンプレートと5つのパーティクル専用ノード(Flipbook、Texture Coordinatesなど)が提供されています。

Shader ビルド設定

Build ProfileのUIから、DirectX 12向けにプロジェクト内の全シェーダーをモダンな「DXC(DirectX Shader Compiler)」でコンパイルする設定が可能になりました。DXCの採用により、Shader Model 6、Wave Intrinsics、ネイティブ16bit演算など先進的なHLSL機能を活用でき、RenderDocやPIX等のGPUプロファイラでの解析精度も向上します。

さらに、シェーダーキーワードをコンパイル時の多重バリアントではなくランタイムの動的分岐(Dynamic Branch)へと変換する設定が加わりました。Unity公式の検証プロジェクト「Survival Kids」では、通常1時間46分要していたクリーンビルドが、動的分岐変換の適用によりわずか32分へと短縮されたことが報告されています。

UIシステム

uGUI

uGUIの新SafeAreaコンポーネント

デバイスが報告するセーフエリア内にコンテンツを収めるSafeAreaコンポーネントが追加されました。

これにより、端末ごとに個別のマージンを定義しなくても、ノッチや丸みのあるコーナー、ジェスチャーエリアを避けられます。アンカーを直接操作するため、配下の要素にも制約が伝わります。またLayout要素には最小・推奨・可変サイズに加えて最大サイズの指定が可能になり、Content Size Fitterには最大値のみを制約する「Clamped」モードが追加されました。

RectTransformのフィッティングAPI

RectTransformに、2つのRectTransformが同一平面上にあるかを判定し、一方を他方の内側に収まるようフィットさせる追加APIが搭載されました。ツールチップやポップアップをコンテナ内に収め続けたい場合などに活用できます。またTextMesh ProのSetText()がReadOnlySpanを受け付けるようになりました。

UI Toolkit

backdrop-filter

UI Toolkitが新しいUSSプロパティ「backdrop-filter」に対応しました。要素そのものではなく、その背後に描画されているものにフィルタ効果を適用できるため、レンダーテクスチャや専用シェーダーを使わずにフロストガラス風のパネルや半透明オーバーレイをUSSだけで表現できます。組み込みフィルターにはドロップシャドウも追加されました。

メッシュ変更API

VisualElement.AddMeshModifier を使うと、GPUに渡る前のメッシュの頂点・インデックスを確認・変更したり、独自の頂点チャンネルを追加したり、ジオメトリを完全に置き換えたりできます。

UI向けの新プロファイラモジュール

UIの更新・描画にかかる時間とコストを把握できる新しいプロファイラモジュールが追加されました。レイアウトやバインディングの更新にかかった時間、パネル上でディスパッチされたイベント数、レンダリングバッチが分割された理由などを確認できます。

Graph Toolkit

Graph Toolkitのデバッグ機能

ランタイムバックエンドを持つツールで、実行状態をグラフ上に直接表示できるデバッグレイヤーが追加されました。

アニメーションするワイヤーやノードの強調表示(フィル量)で処理の流れを、ポートプレビューでデータの移動を確認でき、エラー・警告・情報もグラフ上にマーカーとして表示されます。

APIの拡張

あわせて、USSファイルによるノード外観のカスタマイズ、ポートの接続数(0/単一/複数)の指定、接続可能な型を制御するルールの定義、Flags属性付きenumの複数選択対応、ツールバーへの独自アクション追加、ノードアイコンのプログラムからの変更など、ツール開発者向けのAPIも拡張されています。

プラットフォーム

XR

ハンドトラッキングをより細かく制御できる新しいOpenXR拡張への対応、XRでの空間オーディオ対応、Questプラットフォーム向けの適応パフォーマンス機能(実行時の温度・電力状態に応じたアプリ品質の自動調整)が追加されました。あわせて各プラットフォーム向けのシェーダー最適化も行われています。

Web

WebGPUが本番運用に対応

WebGPUをWebビルド向けの本番運用グラフィックスAPIとして利用できるようになりました。DirectX 12、Vulkan、Metalをベースとしており、Compute Shader、GPUスキニング、間接描画、VFX GraphがWebプロジェクトで初めて利用可能になります。

URPプロジェクトは2D・3D・Forward+・Deferredのいずれのレンダリングでも、SRP Batcher・DOTS・BatchRendererGroupを含めて既存の設定のまま移行できるとしています。既定のグラフィックスAPIは引き続きWebGL 2で、対応していないブラウザ・デバイスでは自動的にWebGL 2にフォールバックします。

Progressive Asset Loading

Webプロジェクト向けに、全アセットを起動前に一括ダウンロードするのではなく、シーンごとに分割してダウンロードする「Progressive Asset Loading」が導入されました。

最初のシーンに必要な分だけを先にダウンロードし、以降のシーンはプレイ中にストリーミングで読み込みます。コード変更は不要で、モバイル回線や離脱率の高いWebポータルで効果が大きいとしています。

WebAssembly64

「WebAssembly64」により、従来32bit WebAssemblyのポインタ制約で4GBまでだったヒープ上限を最大16GBまで拡張できるようになりました。

ただし、64bitポインタはコードサイズと実行時オーバーヘッドが増えるため既定は32bitのままで、Chrome/Edge 128以降、Firefox 129以降が必要です(Safariは非対応)。

モバイル

Apple – Swift Project Type

Unity 6.5で実験的に導入されたiOS/iPadOS/tvOS向けのSwift Project Typeについて、6.6では新しい公開APIへのアクセスがよりシンプルになりました。追加される「UnityAPI」フレームワークを通じて、iOS Unity Playerの一時停止・再開やライフサイクルイベントの取得など、ネイティブレベルの操作にアクセスできます。

Android

Android向けにゲームパッドのランブル(振動)機能に対応したほか、リリースビルドをシステムツールでプロファイリングできる「Profileable Shell」ビルド設定が追加されました。対応する最小OpenGL ESバージョンが3.0から3.1に引き上げられ、アイコンはAdaptiveアイコンのみのサポートとなり、レガシー/ラウンドアイコンは廃止されています。

Consoles/PC

DirectStorage対応の拡大

WindowsおよびXbox Series X|Sにおいて、Content DirectoriesがDirectStorageの対応データタイプに加わりました。DirectStorageは対応データの読み込み速度を最大40%向上できるとのことです。

その他の新機能

アニメーション

  • Animationウィンドウに検索バーを追加:Animationウィンドウにプロパティを絞り込める検索バーが追加されました。「scale」のように入力すると、該当するプロパティだけを一覧に表示できます。あわせて、Animation RiggingとTimelineがコアパッケージ化され、別途パッケージをインストールしなくても利用できるようになりました。

Entities

  • Entitiesのハイアラーキー統合:ECSのEntity・World・サブシーンが標準のHierarchyウィンドウに統合され、専用の「Entities Hierarchy」ウィンドウは非推奨になりました。t: トークンによるコンポーネント型検索や、サブシーンの右クリックでの開閉が可能です。あわせてSystemsウィンドウにも、システム同士の更新順の依存関係を示す「Scheduling」列などが追加されています。

アセットとメディア

  • 2次・3次アンビソニックオーディオ:最大3次(16チャンネル)までのアンビソニックオーディオのインポート・再生に対応し、より精密な音の定位表現が可能になりました。なお、これらのファイルの再生にはサードパーティ製または自作のデコーダプラグインが必要とされています。

最適化

  • ビルド/ランタイムサイズの最適化:Web・Android・iOS向けビルドのランタイムサイズが削減されました。Build SettingsのCode Optimizationプロパティには新たに「Maximum Size Reduction」「Maximum Size Reduction with LTO」が追加され、ビルドサイズを優先した最適化を選択できるようになっています。
  • Profilerのスクリーンショットとモジュールのピン留め:Profiler実行中のゲームプレイをスクリーンショットとして連続して撮影・閲覧できるようになり、プロファイル結果と実際の画面の変化を突き合わせやすくなりました。任意のモジュールを右クリックしてウィンドウ上部にピン留めする機能も追加され、よく確認するモジュールを最大4つまで常時表示しておけます。

パッケージマネージャ

  • .unitypackageのパッケージ署名:パッケージ公開者が、エクスポートする.unitypackageファイルに署名できるようになりました。これにより、コンテンツの検証済みステータスや配布元、公開後に改ざんされていないことを確認できます。組織単位の署名ワークフローにより、パッケージをファイル単体ではなく検証済みの公開アイデンティティに紐付けられます。この機能は、パッケージエコシステムの透明性と信頼性向上を目指す取り組み「Unity Core Standards」の一環と位置付けられています。

その他すべてのアップデート内容の確認はこちらから

ダウンロードとリソース

Unity 6.6はSupported release(サポート対象リリース)であり、次のリリース(Unity 6.7)が登場するまでの間、LTSバージョンと同等のサポート、安定性、重要なアップデートが提供されます。定期的なアップグレードを行うことで、最新の機能や不具合修正にいち早くアクセスでき、次期LTSへの移行もスムーズになります。

最新バージョンのダウンロードはこちらから

すべての機能の改善や新機能のリストについては、「What’s New」ドキュメントにて確認できます。

現在のバージョンから6.6への移行手順については、アップグレードガイドをご参照ください。

目次