HD レンダーパイプライン入門
HD レンダーパイプライン (High Definition Render Pipeline、HDRP) は Unity のビルトインレンダーパイプラインとは異なる シェーダー およびライティング単位を使います。つまり、HDRP を使う新しいプロジェクトを作成するか、または 既存のプロジェクトをアップグレードして HDRP を使う 必要があるということです。
このドキュメントでは、HDRP を使うシーンの作成方法について解説し、忠実度の高いビジュアルの制作に役立つ、主要機能を紹介します。
HDRP を使っていない既存のプロジェクトをアップグレードするには、マテリアルを HDRP と互換性のあるものに変換する必要があります。アップグレードプロセスに関する情報は、HDRP にアップグレードする を参照してください。
テンプレートから HDRP プロジェクトを作成
Unity プロジェクトを設定および管理するには、Unity Hub をインストールします。
Unity は、即座に HDRP 設定に利用できる HDRP テンプレートプロジェクトを提供しています。HDRP プレートプロジェクトの作成方法は以下の通りです。
- Unity Hub を開き、Projects タブに行って New をクリックします。
- Project Name を入力し、Template セクションで High Definition RP をクリックします。
- Create をクリックします。
Unity はプロジェクトを作成し、HDRP パッケージおよびすべての依存関係を自動インストールします。プレートプロジェクトが開くと、次のようなメイン シーンが表示されます。
このテンプレートは、高度なグラフィックスを目指すプロジェクトの出発点として有効です。複数の物理ベースのライティング設定が含まれているので、HDRP を使うと現実的な環境照明を実現できます。さらに、デカール、ボリューム、そして物理的に精密なマテリアルなどといった、多数のユースケース例も含まれています。
パイプラインの設定
HDRP を使う前に、グローバルレンダリング設定を制御し HD レンダーパイプラインのインスタンスを作る、HDRP アセットがまず必要です。High-Definition RP テンプレートが HDRP アセットを作成してくれますが、例えば各ターゲットプラットフォームに対して 1 つの HDRP アセットを作るなど、レンダリングのニーズに応じて様々な HDRP アセットを作成できます。HDRP アセットでは、Editor でプロジェクト全体に対する機能を有効にすることができます。異なる機能にメモリーを割り当てるため、ランタイムに編集することはできません。詳細は、HDRP アセット を参照してください。
レンダークオリティーとランタイムのパフォーマンス間で適度なバランスをとるために、カメラ の フレーム設定 を調整します。Play Mode に入る前、または HDRP プロジェクトのビルド前に HDRP アセットでエフェクトが有効化されている限り、フレーム設定を使い、各カメラベースでランタイムにエフェクトを有効、あるいは無効にできます。
レンダーパイプラインウィザード
HDRP には HDRP プロジェクトを設定するのに役立つ Render Pipeline Wizard (レンダーパイプラインウィザード) があります。またこれは、プロジェクトに DirectX Raytracing (DXR) や VR のサポートを追加するためにも利用できます。DXR または VR を使いたい場合を除き、High-Definition RP テンプレートを使ってプロジェクトを作成する場合に、Render Pipeline ウィザードを使う必要はありません。
ボリューム
Volume (ボリューム) は、シーン全体を調整する代わりに、シーンをエリアに分割し、高い精密度でライティングおよびエフェクトを制御するために使います。シーンに好きな数だけボリュームを追加して異なる空間を作り、現実的な効果を実現するために個々に照明を当てることができます。各ボリュームには環境があり、スカイ、フォグ、そしてシャドウの設定を調整できます。また独自の ボリュームプロファイル を作成し、双方間で切り替えることもできます。
シーンにボリュームを追加し、ボリュームプロファイルを編集するには、
- GameObject > Volume に行き、リストからオプションを 1 つ選択します。
- シーンまたはヒエラルキービューで、新しいゲームオブジェクトを選択しインスペクターで表示します。
- Volume コンポーネントで、ボリュームプロファイルを Profile プロパティーフィールドに割り当てます。新しくボリュームプロファイルを作成したい場合は、プロパティーフィールドの右側にある New ボタンをクリックしてください。
- これでボリュームプロファイルに含まれる ボリュームオーバーライド が Profile プロパティーの下に表示されるはずです。ここでは、ボリュームオーバーライドの追加、削除、およびそのプロパティーの編集が可能です。
Visual Environment
Visual Environment オーバライドでは、シーンに使いたいスカイとフォグのタイプを変更できます。例えば、ボリュメトリックフォグを使って、次のような光芒 (光のすじ) を作れます。
詳細は、Visual Environment、Sky 概要、および Fog 概要 を参照してください。
マテリアルとシェーダー
HDRP には多種多様なマテリアルを作成できるシェーダーがあります。例えば、屈折エフェクトのあるガラスや、サブサーフェス散乱のある葉っぱを作成することができます。マテリアルのオプションは、マテリアルが使うシェーダーによって異なります。HDRP のシェーダーは多くのマテリアルプロパティーを共有しています。詳細は、HDRP マテリアル機能 を参照してください。
ライティング
現実的なライティングをシーンに適用するために、HDRP は物理ライト単位 (PLU) を使っています。これは例えばお店で電球を探しているときや、写真の露出計で光を測定するときのように、実際に測定できる値に基づいています。なお PLU を使用する際にライトが正常に機能させるには、HDRP の単位変換に従ってください (1 Unity 単位= 1 メートル)。詳細は、物理ライト単位 を参照してください。
さらにその理由から、HDRP がデフォルトで使う HDRI スカイのエクスポージャーは 10 に設定されていますので注意してください。ただし、新たに作成されたディレクショナルライトの強度は 3.14 で、自動エクスポージャーが明るすぎるスカイを補うため、オブジェクトが黒く見えてしまいます。ディレクショナルライトの値を 10000 に設定することで、屋内と屋外が混ざったシーンにも適用できるようになります。HDRP ウィザードが正しく設定されている場合は、そのまま一貫した値が新たに作成されたシーンに使われます。
詳細は、HDRP ライティング機能 を参照してください。シーンにライトを追加する際のヒントは、ライト を参照してください。
ライトエクスプローラー
HDRP は Light Explorer (メニュー: Window > Rendering > Light Explorer) に設定を加えています。これにより、HDRP 機能およびライティング単位を調整することができます。
ライトエクスプローラーを使うと、シーン中でライトの位置を特定することなく、プロジェクト内のどんなタイプのライト設定も変更することができます。このウィンドウではさらに、リフレクションプローブとライトプローブも管理できます。
シャドウ
シャドウ ボリュームオーバーライドでは、ボリューム内のシャドウの全体的なクオリティーを決定できます。例えば、Max Distance フィールドは、シャドウからカメラまでの距離に基づいて、シャドウのクオリティーを計算します。
詳細は、シャドウ を参照してください。
関連情報
- HDRP 機能の完全リストは、HDRP 機能 を参照してください。
- 忠実度の高いリアルタイムのグラフィックスを HDRP で実現する方法の、オンラインセッションは、HDRP でゲーム用に忠実性の高いグラフィックスを実現する を参照してください。