スクリプタブルレンダーパイプラインの紹介

Tutorial

intermediate

+10XP

10 mins

(7)

Unity Technologies

スクリプタブルレンダーパイプラインの紹介

スクリプタブルレンダーパイプライン (Scriptable Render Pipeline、SRP) を使用すると、開発者は Unity が C# でフレームをレンダリングする方法を記述することができます。開発者は、組み込みのパイプラインを使用したり、独自のパイプラインを構築したり、プロジェクトのニーズに合わせて既存のパイプラインをカスタマイズしたりすることができます。このチュートリアルでは、さまざまなスクリプタブルレンダーパイプラインについて学びます。

Languages available:

1. スクリプタブルレンダーパイプラインの概要

このチュートリアルは Unity 2019 LTS を使用して検証しています

https://learn.unity.com/tutorial/understanding-scriptable-render-pipelines-2019-3

スクリプタブルレンダーパイプライン (Scriptable Render Pipeline、SRP) を使用すると、開発者は Unity が C# でフレームをレンダリングする方法を記述することができます。開発者は、組み込みのパイプラインを使用したり、独自のパイプラインを構築したり、プロジェクトのニーズに合わせて既存のパイプラインをカスタマイズしたりすることができます。

現在、レンダリングパイプラインには、HDRP(High-Definition Render Pipeline)と URP(Universal Render Pipeline)の 2 つのパイプラインが含まれます。

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

HD レンダーパイプライン(HDRP)は、高い忠実度とより優れたビジュアル面の品質の向上を目指して設計されています。このパイプラインでは、ターゲットプラットフォームが少なくとも DirectX 11 の機能レベルを持っていることや、計算シェーダーを多用することなど、いくつかの前提条件が設定されています。

HDRP には、改良されたライティングとマテリアルレンダリング、デバッグツールなど、新しい機能と挙動のセットが含まれています。従来の組み込みのレンダリングパイプラインとは大きな違いがあるため、このパイプラインを利用するには学習曲線を必要とします。

3. ユニバーサルレンダーパイプライン

このチュートリアルは Unity 2019 LTS を使用して検証しています

ユニバーサルレンダーパイプライン (URP) は、リアルタイムパフォーマンスを最適化するために設計されています。その目的は、パフォーマンスに制約のあるプラットフォーム上でプロジェクトが優れたパフォーマンスを発揮できるようにすることです。これは、ライティングとシェーディングに関してトレードオフを行うことで実現します。広範囲のモバイルプラットフォームや VR をターゲットにしている場合、またはリアルタイムライティングのニーズが限られているプロジェクトを作成している場合、URP は最適な選択です。

URP は、1 つのリアルタイムシャドウライトとオブジェクトごとのライトカリングを使ってシングルパスのフォワードレンダリングを実行します。これと比較して、フォワードレンダリングのレガシーパイプラインは、範囲内のピクセルライトごとに追加のパスを実行します。つまり、URP を使用することでドローコールの削減につながるのです。また、シェーダーグラフツールにも対応しており、シェーダーをオーサリングできるワークフローにさらなるメリットをもたらします。

4. 適切なパイプラインの選択

どのパイプラインが自分に適しているかを決めるには、要するにプロジェクトの性質によります。ここでは、どのパイプラインが最適かを判断するための質問を以下に示します:

  • プロジェクトを最適化し、さまざまなデバイスで優れたパフォーマンスを発揮する必要があるのか?
  • ハイエンドプラットフォーム向けのプロジェクトのリリースを目指しているのか?

HD レンダーパイプライン(HDRP)は、ビジュアルの境界線を次世代の忠実度の高いグラフィックスに押し上げるために設計されています。優良画質のビジュアルクオリティを求め、ハイエンドの PC やコンソール向けのプロジェクトをリリースしようとしているのであれば、HDRP の恩恵を受けることができるでしょう。

ユニバーサルレンダーパイプライン(URP)は、パフォーマンスを考慮して設計されており、ライティングやシェーダーとのトレードオフを行い、それらの機能の計算負荷を軽減します。これは、処理能力が限られているため通常はレンダリングパイプラインの構築が困難な幅広い種類のプラットフォームをターゲットにすることができるように設計されています。もしモバイルや VR プラットフォームでの幅広いリリースを目指しているのであれば、URP を使用することで利益を得ることを可能にします。

5. まとめ

どのパイプラインを選択するかにかかわらず、レンダリングパイプラインをニーズに合わせて拡張、使用、カスタマイズできる新しいフレームワークができます。

Complete this Tutorial