Version: Unity 6.0 (6000.0)
言語 : 日本語
Unity 6 プレビューの新機能
Unity 2023.1 の新機能

Unity 2023.2 の新機能

リリースノート

このバージョンの Unity の新機能、変更、改善に関する詳細については、2023.2 リリースノート を参照してください。

その他のリリースのリリースノートについては、Unity ダウンロードアーカイブを参照してください。

アップグレードガイド

既存のプロジェクトを 2023.1 からアップグレードする場合は、2023.2 へのアップグレードガイド をよく読んで、プロジェクトへの影響を確認してください。

新規機能

ここでは、2023.1 以降 Unity 2023.2 に加えられた変更と、その影響が及ぶ領域に関するドキュメントを確認できます。

アクセシビリティ

アクティブなアクセシビリティ階層とそのノードを表示する新しいエディターウィンドウ、Accessibility Hierarchy Viewer が追加されました。Accessibility Hierarchy viewer にアクセスするには、メインメニューで Window > Accessibility > Accessibility Hierarchy viewer を選択します。

オーディオ

  • オーディオをランダム化し、音量、ピッチ、時間、トリガーを繰り返しのない間隔に設定できるようにすることで、ゲームのサウンドを 2 度と同じにしない Audio Random Container が追加されました。
  • Audio Random Container に VU メーターが追加されました。

オーサリングツール

2D

Tile Palette エディターウィンドウでオーバーレイがサポートされるようになりました。

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

  • シーンビューのコンテキストメニュー が追加されました。シーンビューの新しいコンテキストメニューにアクセスするには、右クリックするか、カスタマイズ可能なキーボードショートカットを使用します。UI Toolkit で作成され C# で拡張可能なこれらのメニューから、頻繁に使用するコマンドに簡単にアクセスできます。
  • シーンビューの設定Refresh the Scene view only when the Editor is in focus オプションが追加されました。このオプションを有効にすると、エディターにフォーカスがあるときにのみシーンビューが更新されます。
  • キーボードショートカットをバインドしてアニメーター状態間の遷移を可能にする機能が追加されました。
  • 基本的な OpenType フォント機能がサポートされるようになりました。現在は、カーニングのみが可能です。
  • カメラのプレビューに代わる新しい カメラオーバーレイ が追加されました。カメラオーバーレイを使うと、カメラを一人称コントロール し、シーンビューでカメラを管理できます。
  • ほとんどの OS のコンテキス依存メニューが UI Toolkit バージョンに置き換えられました。
  • 色チェッカー (ライティングとポストプロセスのキャリブレーションに使用するツール) が追加されました。色チェッカーは、ユーザーが GameObject > Rendering > Color Checker Tool で追加できるオブジェクトです。このツールはライティングアーティストのための制作ツールとしてのみ想定されており、ビルドには保存されません。
  • エディターで様々なライセンス通知モーダルを表示できるようにしました。
  • PropertyCollectionAttribute が追加されました。コレクションのカスタムドロワーの実装に使用できます。
  • カメラのパン、ズーム、軌道制御を使ってライトを配置するための、新しいツールが追加されました。詳細については、透視からのライトの表示と制御 を参照してください。

UI Toolkit

  • 柔軟で新しい ランタイムバインディングシステム を使用して、エディターまたはランタイム UI の作成時にデータ値を UI 要素プロパティに簡単に接続できるようになりました。データバインディングは、UI Builder または C# コードのどちらかで設定できます。
  • ToggleButtonGroupTabTabViews などの新しいコントロールが追加されて、既存のコントロールが改善されました。
  • Button、ListView、TreeView コントロールでアイコンがサポートされるようになりました。
  • 新しい UxmlElement 属性と UxmlAttribute 属性が追加されました。これらの属性は、カスタムコントロールを作成 するときに既存の UxmlFactory と UxmlTraits に置き換わります。これにより、カスタムコントロールの作成が合理化されて、C# 属性による効率的な代替手段が提供され、大規模なコード記述が不要になります。さらに、Inspector と同じ方法でフィールドの カスタムプロパティドロワー を作成できるようになりました。
  • UI Builder が機能強化され、スタイルプロパティの指定対象を表示するための改良、キャンバス操作の調整、その他の改良が行われました。最新の UI Builder では、UXML オブジェクトのオーサリングもサポートされ、MultiColumnTreeView と MultiColumnListView の編集が可能になりました。
  • 絵文字範囲 (プライマリフォントとグローバルフォールバック) でグリフを検索する順序を制御する Emojis Fallback Support フィールドが TextElementTextField に追加されました。さらに、OpenType フォント機能の基本サポートが追加され、現在はカーニングの実現に重点が置かれています。
  • UI Builder の Inspector のボックスモデルウィジェットに新しい Spacing フィールドが追加されました。

TextMeshPro

  • 基本的な絵文字がサポートされるようになりました。
  • 基本的な OpenType フォント機能サポートされるようになりました。現在は、カーニングのみが可能です。

グラフィックス

  • コンピュートスキニングのバッチ処理:Unity のスキンメッシュレンダラーコンポーネントは、GPU での頂点変換の並列化にコンピュートディスパッチを使用します。Unity 2023.2 では、サポートされているすべてのプラットフォームでスキンメッシュレンダラーに最適化が導入されます。これらの最適化は、コンピュートスキニングとブレンドシェイプのディスパッチをバッチ処理することを目的としています。これにより、並行して変形される頂点の数が増え、キャラクターおよびスキンメッシュレンダリングの GPU パフォーマンスが向上します。
  • プログレッシブな GPU ライトマッパーは、プレビュー版ではなくなり、完全にサポートされるようになりました。
  • ランタイムにライトプローブの位置を移動する API が追加されました。
  • Lighting ウィンドウの Auto Generate 設定が削除されました。関連する API は現在廃止されています。編集中にライトマップを確認するために、シーンビュー描画モードを選択し、Lighting DataPreview に設定できるようになりました。すると、ベイクしたライティングのプレビューが表示されます。プレビューマップは非破壊的であるため、シーンをベイクした後に使用できます。
  • ライトマップされたシャドウキャスターをカリングするかどうかを指定する BatchCullingContext.cullingFlags が追加されました。
  • BatchRendererGroup に対して rendererPriority がサポートされるようになりました。
  • コンピュートキューでレイトレーシング加速構造の非同期ビルドがサポートされるようになりました。AsyncCompute コマンドバッファで CommandBuffer.BuildRayTracingAccelerationStructure コマンドを実行できるようになりました。レンダーグラフとレンダーグラフビューアーで RayTracingAccelerationStructure がサポートされるようになりました。
  • Texture2DArrays でミップマップ制限がサポートされるようになりました。
  • Texture2DArrays でミップマップストリッピングがサポートされるようになりました。
  • タイル状の EXR 画像を LoadImage に提供するためのサポートが追加されました。
  • ビルド時間と GPU のレイトレーシングスピード/メモリ消費のバランスをとるための、レイトレーシング加速構造ビルドフラグが使用可能になりました。フラグは、RayTracingAccelerationStructure の作成とビルド時に C# からカスタマイズするか、レンダラーの設定からカスタマイズできます。
  • DX12 でネイティブレンダーパスがサポートされるようになりました。
  • D3D12 (WindowsおよびXBoxプラットフォーム) でGPU バッチスキニングがサポートされるようになりました。
  • パーティクルのトレイルにカスタム頂点ストリーム機能が追加されました。
  • BakeTexture および BakeTrailsTexture スクリプトメソッドが追加されました。

ユニバーサルレンダーパイプライン (URP)

URP の新機能と改善点の詳細については、URP の新機能 を参照してください。

  • クロスプラットフォーム HDR ディスプレイがサポートされるようになりました。HDR ディスプレイは、自然なライティング条件により近い高めの輝度差の範囲で画像を再現する機能です。HDR 出力では、これらのデバイスに表示されるリニアライティングレンダーと HDR 画像のコントラストと品質が維持されます。エディターとスタンドアロンプレイヤーの、モバイルと XR を含むすべてのレンダーパイプラインと可能なプラットフォームで、HDR トーンマッピングとディスプレイが完全にサポートされるようになりました。
  • URP がライティングされた環境をより効率的にレンダリングできるように、プローブボリュームからの間接光に頂点ごとの品質レベルが追加されました。URP ではライティングシナリオのブレンドやリフレクションプローブのライティングの正規化がサポートされないため、モバイルでさらなる最適化が必要な場合があります。
  • モーションブラー音量コンポーネントに、モーションベクトルを使用してカメラの露出時間よりも速く動くオブジェクトをぼかす、Camera And Objects という新しいオプションが追加されました。
  • 追加のディレクショナルライトクッキーがサポートされるようになりました。
  • URP グローバル設定に Default Volume Profile フィールドが追加されました。
  • ユニバーサルレンダーパイプラインアセットに Volume Profile フィールドが追加されました。
  • URP マテリアルで Alembic 速度モーションベクトルがサポートされるようになりました。
  • ShaderGraph に Time ノードのみに基づく頂点アニメーションによる TimeBased モーションベクトルの自動生成が追加されました。位置に影響するその他すべてのデータは、フレーム間で一定である必要があります。
  • フォワード+レンダリングパスへの平行投影を使用した XR レンダリングとカメラがサポートされるようになりました。
  • フォワード+レンダリングパスで中心窩レンダリングがサポートされるようになりました。

HD レンダーパイプライン (HDRP)

URP の新機能と改善点の詳細については、HDRP の新機能 を参照してください。

  • デカールプロジェクターで HDRP パストレーサーがサポートされるようになりました。パストレーサーはデカールからの放出をサポートしません。
  • ランタイムにディスクからプローブ音量データをストリームする機能が追加されました。異なる品質レベルのディスクストリーミングを、有効または無効にできます。
  • HDRP Shader Graph デカールが透明なオブジェクトと互換性のあるものになりました。つまり、Shader Graph で作成されたデカールを使用して、透明なオブジェクトに影響を与え、雨滴、波紋、カスタム彫刻、ガラスへの汚れ効果などのプロシージャルのエフェクトをビルドできます。
  • HDRP の物理的な空に、星と天体を含む夜空が追加されました。
  • 物理ベースの空に Shader Graph 出力が追加され、月を作成するコントロールが追加されました。
  • レンダーグラフビューアーに非同期演算パスとその同期ポイントの可視化が追加されました。
  • ボリュメトリッククラウドにビールシャドウマップが追加されました。
  • HD レンダーパイプラインアセットに Volume Profile フィールドが追加されました。
  • 色の付いた透過のある薄いオブジェクトにマテリアルタイプが追加されました。
  • Lit ShaderGraph のマテリアルにクリアコートを無効にするオプションが追加されました。
  • シーンにゲームオブジェクトがなくてもレンダーパイプラインにカスタムパスを挿入するために使える Global Pass API が追加されました。
  • AOV (Arbitrary Output Variable、任意出力変数) にボリュメトリックフォグ全画面デバッグモード出力が追加されました。
  • ディスクから直接データをストリームする APV (Adaptive Probe Volumes、適応型プローブボリューム) 機能が追加されました。この機能は、コンピュートシェーダーと互換性があるデバイスでのみ使用できます。
  • ベイク API を使用してライトマップやリフレクションプローブから独立して APV (Adaptive Probe Volumes、適応型プローブボリューム) をベイクする機能が追加されました。

マルチプレイヤー

Netcode for GameObjects

  • Network Object コンポーネントのコンテキストメニューに Refresh In-Scene Prefab Instances オプションが追加されました。このプロパティを使用して、NetworkObject コンポーネントを持つ前に存在したシーンのプレハブインスタンスの GlobalObjectIdHash 値を更新します。このプロパティは、ビルドリストに含まれるすべてのシーンに影響します。
  • MTU (Maximum Transmission Uni: 最大伝送単位) サイズを完全に制御できるように、NetworkManager メソッドの SetPeerMTUGetPeerMTU が追加されました。Netcode for GameObjects のカスタムプロトコルに使用します。
  • ネットワークプレハブ ID の生成が改善され (例えば、GlobalObjectIdHash)、Unity が無効な値を割り当てていた問題が修正されました。
  • シリアル化 API とコード生成パイプラインが以下のように改善されました。
    • 任意のクラスまたはメソッドに適用して特定の型をコード生成シリアル化プロセスに含めることができる GenerateSerializationForTypeAttribute メソッドが追加されました。
    • NetworkVariable 型でラップされたジェネリック型をコード生成プロセスに含めるために使用できる GenerateSerializationForGenericParameterAttribute メソッドが追加されました。
    • ボックス化する手間をかけずにカスタム NetworkVariable 作成を改善する追加の NetworkVariableSerialization メソッドが公開されました。NetworkVariableBase.MarkNetworkBehaviourDirty メソッドを使用して、NetworkVariable をダーティにすることができます。
  • ジェネリック NetworkBehaviour 型の RPC で、クラスのジェネリック型のパラメーターをシリアル化できるようになりました。
  • Netcode での 32 ビット ARMv7 サポートが改善されました。
  • NetworkManager の初期化プロセスをより適切に通知するために、NetworkManager イベント OnServerStartedOnServerStoppedOnClientStartedOnClientStopped が追加されました。

専用サーバープラットフォーム

  • プレイヤー設定に Dedicated Server Optimizations オプションが追加されました。有効にすると、サーバービルドからすべてのシェーダーが削除されます。このオプションを有効にすると、ビルド時間が大幅に短縮されます。

Unity Transport

  • Unity Transport 2.X が Unity Transport のデフォルトおよび推奨バージョンになりました。
  • Transport が NetworkSettings.WithNetworkConfigParameters の新しい maxMessageSize パラメーターを通じて送信する最大メッセージサイズを設定できるようになりました。これは、ネットワーク機器が大きなパケットを誤って処理してしまう環境 (一部のモバイルネットワークや VPN など) で役立ちます。この値に、IP ヘッダーと UDP ヘッダーは含まれませんが、Transport 自体が追加したヘッダー (例えば、信頼性ヘッダー) は含まれます。デフォルト値は 1400 です。クライアントとサーバーの両方で同じ値を使用する必要があることに注意してください。

Package Manager

パッケージキャッシュ管理の変更

Package Manager ウィンドウの変更

  • ナビゲーションパネル の追加:
    • パッケージサブセットのビュー間のナビゲーションを向上させるパネルが追加されました。以前のバージョンでは、これらのコンテキストは Packages ドロップダウンメニューに格納されていました。
    • Package Manager のナビゲーションパネルの専用エントリーとして Services が追加されました。
    • ナビゲーションパネルのIn Project の下にネストされたエントリーとして Updates が追加されました。このネストされたビューには、プロジェクト内で更新可能なすべてのパッケージがリストされます。
    • ナビゲーションパネルの My Registries の下にネストされたエントリーとして個々のスコープ付きレジストリが追加されました。
  • リストパネル の機能拡張:
    • In Project コンテキストのリストパネルに Packages - Asset Store 展開が追加されました。これにより、In Project ビューからアセットストアパッケージを表示および管理できます。
    • 検索フィールド の場所が変わり、コンテキストごとを基準に検索語が再度呼び出されるように動作が変更されました。
  • 詳細パネル の機能拡張:
    • 詳細パネルのアクションボタンを合理化することで、My Assets コンテキストでのパッケージ管理のフローが改善されました。最も一般的なアクションがメニューボタンのデフォルトアクションとして表示され、その他のアクションはメニューに表示されます。また、アセットストアパッケージがプロジェクトにすでにインポートされ、最新の状態であることを明確に示す In Project ラベルが追加されました。
    • アセットストアパッケージを表示するときの Import ボタンのラベルが更新されました。更新されたアセットストアパッケージをダウンロード した後のメインアクションボタンラベルは Import update #.# to project になるため、更新をプロジェクトにインポートする必要があることがはっきり分かります。
    • レジストリからインストールしたパッケージの ドキュメント リンクの動作が更新されました。リンクを右クリックして、Open in browser または Open locally を選択できるようになりました。
    • ログアウトしてからアセットストアパッケージの詳細を表示しようとしたときに Unity ID でサインインするためのボタンが追加されました。
  • その他の機能拡張:
    • My Assets コンテキストを表示しているときの Filters メニューの値が更新されました。
    • Filters コントロールのラベルが更新され、親カテゴリではなく選択した値が表示されるようになりました。

Android

  • Addressables の Play Asset Delivery がサポートされる Addressables for Android パッケージ (com.unity.addressables.android) が追加されました。
  • 複数のテクスチャ圧縮形式が Android アセットパックにまとめられた Addressables for Android パッケージを通じて、テクスチャ圧縮形式のターゲティングがサポートされるようになりました。テクスチャのロードと描画を少ないメモリで素早く行うために、APK はインストール時に、デバイスのモバイル GPU に基づく最適なテクスチャ圧縮形式のみを使用してビルドされます。
  • アプリケーションのクラッシュとアプリケーション応答なし (ANR) エラーに関する情報を提供する ApplicationExitInfo API が追加されました。
  • 以下の改善が行われました。
    • GameActivity がデフォルトのアプリケーションエントリーポイントになり、Android とアプリケーション間の相互作用をより制御できるようになりました。
    • サポート対象の Android 最低バージョンが 6.0 (API レベル 23) に上がりました。

物理演算

  • Joint Angular Limits ギズモに ArticulationBody.jointPosition ポインターラインが追加され、シーンビューにジョイントの正確な位置が表示されるようになりました。

プロファイラー

  • Memory Profiler の AudioClip とシェーダーでメタデータがサポートされるようになりました。
  • Profiler ウィンドウに Highlights モジュールが追加されました。
  • CPU プロファイラーに新しい反転階層ビューが追加されました。

レイトレーシング API

  • レイトレーシング加速構造ビルドフラグ:Unity のレンダラーと RTAS API に新しいレイトレーシング加速構造ビルドフラグが導入されました。これらのフラグを使用すると、レイトレーシングによるメモリの使用量、RTAS のビルド時間、レイトレーシングのパフォーマンス間のトレードオフを制御できます。開発者とアーティストは、新しいフラグを使用して、シーンとレンダラーでのレイトレーシングのパフォーマンスを微調整できます。
  • シェーダーでのインラインレイトレーシング:DXR1.1 対応の Windows プラットフォーム、Xbox Series X/S、PlayStation 5 をターゲットにする場合、ラスタライゼーションシェーダーとコンピュートシェーダーでインラインレイトレイトレーシングを使用できるようになりました。シェーダー内からレイクエリを発行して、バインドされたレイトレーシング加速構造を走査し、交差テストを実行できます。これにより、あらゆる種類のハードウェアアクセラレーションによるレイトレーシングエフェクトとシミュレーションを実装できます。

Shader Graph

  • Shader Graph で UGUI がサポートされるようになりました。Shader Graph は URP と HDRP の両方にキャンバスのサブターゲットを持つようになりました。UI アーティストは、Shader Graph を使用して UI 要素のカスタムシェーダーを作成できます。UI 要素の全体的な外観とスタイルを定義したり、アニメーション化された UI エフェクトを作成したり、テクスチャメモリの使用量を抑えつつカスタムボタンの状態を定義したりします。
  • Shader Graph キャンバスマスターノードを有効にすると、HDRP、URP、ビルトインのキャンバス用の UI シェーダーを作成できます。

SpeedTree

Transmission Mask を使用して葉のみにサブサーフェススキャタリングを適用する、HDRP の SpeedTree のビジュアル品質が向上しました。HDRP/Nature/SpeedTree8.shadergraph は、Transmission Mask ノードにサブサーフェスマップを使い、樹木の皮や小枝から意図しないライトの透過を取り除きます。これにより、3D ジオメトリのライティングにマッチしない明るすぎるビルボードライティングも修正されます。

スプライン

スプラインオブジェクトにパーソナライズされたデータを保存できるようになりました。また、Inspector でポイントを編集するためのインターフェースが強化され、特定の API が公開されました。スプラインで作業するときに、新しい シーンビューコンテキストメニュー を使用できるようになりました。

Test Framework

  • テストレベルに基づいたテストの再試行と繰り返しが可能になりました。テストの最初のイテレーションの実行が終了するとすぐに、エディターはテストを再試行または繰り返すようになりました。コマンドライン引数をエディターに渡して、以下を行います。
    • テストを x 回実行するか、失敗するまで x を繰り返します。これは不安定なテストの実施に便利です。
    • テストに失敗した場合は x を再試行します。テストを x 回、または成功するまで実行します。
  • エディターのコマンドラインで新しい引数 -randomOrderSeed x を使用して、ランダムな順序でテストを実行できるようになりました。ここで、x は 0 とは異なる整数です。プロジェクトに新しいテストを追加すると、Test Framework は同じシードを渡すランダムな順序を維持し、それに応じて新しいテストをランダムなリストに配置します。
  • プレイヤーのビルドステップで生成する TestFileReferences.json が追加されました。テスト実施者は、これを使用して実行ステップのデータを拡張できます。
  • UTF バージョンが SRP テスト用に自動更新されるようになりました。

バージョン管理

プロジェクトのルートフォルダー外のディスクに存在するパッケージの追跡をサポートするプロジェクトオプションが追加されました。

VFX Graph

  • 事前定義されたエフェクトを備えた VFX Graph アセットがテンプレートウィンドウに追加されました。これらのテンプレートは、独自のエフェクトの出発点として使用できます。
  • Custom HLSL ブロックと演算子が追加されました。Custom HLSL ノードを使用すると、パーティクルシミュレーション中に独自のコードを実行できます。VFX Graph のコンテキストでは、水平フローに演算子、垂直フローにブロックを使用できます。
  • VFX Graph を備えた URP デカールが追加されました。URP Lit のデカール出力が VFX Graph でサポートされ、シーンのライティングとマテリアルに正しくマッチする素晴らしいデカールエフェクトを URP で作成できるようになりました。
  • HDRP と URP で Shader Graph のスモークエフェクトにライティングが追加されました。つまり、Lit シェーダーで 6 方向ライティングを使用するカスタムのスモークシェーダーを作成できます。
  • URP のカメラ深度と色バッファの動作が拡張されました。つまり、深度ベースの衝突に深度バッファを使用したり、色バッファのサンプルを取得してカスタムエフェクトを作成したりできます。
  • URP でモーションベクトルがサポートされるようになりました。
  • Shader Graph でモーションベクトルがサポートされるようになりました。
  • VFX Graph の Shade Graph インテグレーションを使用して、マテリアルバリアントのワークフローを使って VFX 出力 の設定をオーバーライドする機能が追加されました。
  • 公開されたテクスチャ、メッシュ、グラフィックスバッファによる VFX インスタンシングが可能になりました。

ウェブプラットフォーム (旧 WebGL)

  • Unity ウェブビルドで、Emscripten ツールチェーンの最新のサイズとパフォーマンスの最適化を利用できるようになりました。
  • ランタイムにアプリケーションを起動するブラウザーの種類とその実行ファイルパスを指定できるようになりました。コマンドラインか、Build Settings ウィンドウの GUI 設定を使用して指定できます。

XR

  • HoloLens Automation がサポートされるようになりました。
  • URP、HDRP、ビルトインレンダーパイプラインのトーンマッピングと HDR ディスプレイへの出力に関する Unity の統合サポートが拡張され、HDR ディスプレイを持つ XR デバイスがサポートされるようになりました。

追加リソース

Unity 6 プレビューの新機能
Unity 2023.1 の新機能