Search Unity

高画質レンダーパイプライン ― ビジュアル品質に重点を置いたパイプライン

, 3月 16, 2018

先日のブログ記事では、スクリプタブルレンダーパイプライン(SRP)についてご紹介しました。簡単に言うと SRP とは、Unity がフレームをレンダーする方法をデベロッパーが C# で制御できるようにするものです。Unity 2018.1 には軽量レンダーパイプラインおよび高画質レンダーパイプライン(HD RP)という 2 つのレンダーパイプラインがビルトインで搭載されます。本記事では、このうち HD RP に焦点を当ててお話ししていきます。

HD RP の目的は、高解像度のビジュアルを実現するためのツールをデベロッパーに提供することです。 

このレンダーパイプラインは以下の 3 つのコンセプトを軸に設計されています。

  • 物理ベースレンダリング
  • 一元的、かつ一貫したライティング
  • 特定のレンダリングパスに依存しない機能

物理ベースレンダリングは、ライティング、マテリアル、カメラの 3 つの柱によって成り立っています。ライティングとマテリアルは物理的なインタラクションに基づいており、様々なライティング条件下で一貫した結果を得るためには両者が明確に分離されている必要があります。最終的にライティングが画面上でどのように表示されるかは、カメラを通して決まります。物理ベースレンダリングの目的は、アーティストがより簡単に説得力のある結果を実現できるようにすることにあります。

「一元的なライティング」とは、シーン内で使用されている媒体やオブジェクトのすべてが同じライティングを受けるということです。不透明マテリアル・透明マテリアル・ボリューメトリックマテリアルが一切区別されない状態です。「一貫したライティング」とは、マテリアルが(例えばデカールなどで修正されていても)、光源の種類([例]リフレクションプローブやエリアライトなど)に関わらず、ライティングに対して正しく反応しなければならない事を意味します。これにより、最終的な見た目がより一貫性のあるものになります。

リアルタイムレンダリングで使用されるレンダリングパスは様々です。これには、デファ―ド/フォワード、シングルパス/マルチパス、タイル/クラスターなどが含まれます。ゲーム開発においては、選択したレンダリングパスによってグラフィックスの機能に制約が掛かるのが一般的です。これに対し HD RP は、レンダリングパスの種類に関わらず同じグラフィックス機能を使用可能にすべく開発されました。このため、ゲームに必要な機能を考慮してそれを基にレンダリングパスの選択を行うのではなく、純粋にパフォーマンス面のみを考慮して選択を行えるようになっています。

HD RP は、これらの原則にできる限り沿う形で開発されています。

HD RP は誰のために開発されたか

HD RP は高性能 PC や据え置き機をターゲットにしており、美しい高解像度ビジュアルを実現することに重きを置いています。規模の小さな開発チームでもトップレベルのグラフィックス機能を使用できるようにすることがその目的です。少なくとも DirectX 11 レベルの機能セットを前提としており、コンピュートシェーダーを非常に多用します。これに伴うトレードオフは、HD RP は性能の低いプラットフォームでは機能しないことです。対応のターゲット API は D3D11、D3D12、GNM(PlayStation 4)、Metal および Vulkan です。VR への対応も予定されていますが、現時点で入手可能なプレビュー版には実装されていません。

さらに、HD RP には完全に新しい機能と挙動のセットが搭載されており、これに伴う学習と開発セットアップの再構成が必要となります。プロジェクトを Unity 組み込みのレンダーパイプラインから HD RP へアップグレードするための変換ツールもご提供していますが、これは、マテリアルとテクスチャーの簡単な再設定のみを行うものです。ライティング、ポストプロセッシング、シーン設定、グラフィックス設定、カスタムシェーダーはすべて修正が必要となります。

(例)Viking Village プロジェクトのアップグレード

HD RP は現段階ではプレビュー版であるためプロダクト開発でのご利用はおすすめしません。

ライティングの改良

HD RP は新しいライティングアーキテクチャーを搭載しています。このアーキテクチャーにおいては、デファ―ド/フォワード、およびタイル/クラスターを組み合わせたレンダラーが使われます。これにより、シーン内のライトの数に応じた対応を、これまで Unity に組み込まれていたレンダーパイプラインよりも遥かに効率的に行うことが可能になります。この新しいライティングアーキテクチャーは、パフォーマンスに重点を置いています。

デバッグモードで、タイル化されたライトを一覧表示している例

また、HD RP には様々な追加のライトのプロパティや新しいライトエディターが搭載されており、ライトをフェードさせたり、拡散ライティングとスペキュラーライティングのどちらか一方のみに設定を適用したり、ライトの色の設定に色温度を使用したりすることができます。スポットライトの場合は、内角を制御したり異なる形(円錐形・ボックス形・角錐形)を使用したりすることが可能です。色付きのクッキーにも対応しています。

HD RP は、長方形ライトなどのリアルタイムのエリアライトの使用に対応しています(現時点ではシャドウやベイクには非対応です)。

ライトの減衰は物理的な逆 2 乗の法則に従って行われ、物理的なライトの単位が使用されます。ライティングとライトの制御は完全にリニアで、Unity 組み込みの「ガンマモード」はなくなっています。太陽光の強度は地面(床)の高さにおけるルクス(lx)で定義され、ポイントライトとスポットライトはルーメン(lm)で定義されます。

イメージベースドライティングの面では、HD RP ではリフレクションプローブが大幅にアップグレードされました。具体的には、方向付きのバウンディングボックスや球形の使用が可能となり、プロキシシェイプ(シーンのジオメトリを近似するエリア)とインフルエンスシェイプ(ピクセルが影響を受けるエリア)が分離され、インフルエンスのフェーディングに関する各種オプション(フェースごとのフェーディング、法線の方向に基づくフェーディングなど)が使用できるようになっています。

マテリアルのレンダリング

HD RP には Lit シェーダーと呼ばれる独自のスタンダードシェーダーがあります。Lit シェーダーは数多くの機能を搭載しており、従来の Unity 組み込みのレンダーシステムよりも豊かなマテリアルの表現が可能です。両面サーフェスのオプションもあり、自動的にグローバルイルミネーションに接続されて、プラナーやトリプラナーを始めとする様々なマッピングのオプションが使用できるようになりました。パララックスオクルージョンマッピングやテッセレーションなどの高度なエフェクトがワンクリックで使用できるようになっています!

しかし、マテリアルのレンダリングに関する最も強力な追加要素は、そのライティングモデルです。
HD RP が使用する双方向反射分布関数は、スペキュラーレイヤー用の等方性多重散乱 GGX と拡散光レイヤー用の Disney 拡散です。従来の Unity 組み込みのレンダーシステムとの違いは、この多重散乱の部分です。

以下の画像は、金色のメタリック球の比較です。左に行くにつれてスムース、右に行くにつれてラフになっています。

等方性単一散乱 GGX(従来の Unity 組み込みのレンダーシステムに類似しています)

HD RP の等方性多重散乱 GGX の場合、マテリアルがラフになるに従って、暗くなるのではなく彩度が高くなります。

デフォルトのパラメーターの定義は Metallic/Smoothness ですが、同じシェーダー内で SpecularColor/Smoothness に切り替えることも可能です。

HD RP では、この初期設定モデルを改良したり置き換えたりできます。各種オプションを使って以下を行うことができます。

  • 等方性 GGX を異方性 GGX に置き換える
  • Disney 拡散にサブサーフェススキャタリング(表面下散乱)を追加する
  • 透過性を追加する
  • 遊色エフェクトを追加する
  • クリアコート GGX を追加する

このようにライティングモデルにバリエーションがあるので、様々な複雑な見た目を実現できます。

透過性とサブサーフェススキャタリング(表面下散乱)を使用したキノコの画像(提供:Laurent Harduin)

また HD RP では、透明マテリアル用に、背面→前面の順でのレンダリング(ソートに役立ちます)や深度ポストパス(透明マテリアルの被写界深度エフェクトに使用できます)などの新しいオプションが使用可能です。

背面→前面の順にレンダーした、透明な両面サーフェスの遊色エフェクトの例

HD RP は Lit シェーダーがベースとなっており、様々な Lit シェーダーを組み合わせられる LayeredLit シェーダーを提供しています。LayeredLit に関する詳細は、こちらのブログ記事でお読みいただけます。

HD RP でもうひとつ追加されたのは、デカールへの対応です。デカールは不透明と透明の両方のマテリアルに対応しており(現在引き続き開発中です)、グローバルイルミネーションのサンプリング(ライトマップ/ライトプローブ)に正常に適用されます。

デカールを使用した、床に描かれたチョークの絵

デバッグ

HD RP で追加された最も重要な機能はデバッグツールです。デバッグは、データ作成およびパフォーマンスの問題を理解するためには極めて重要です。

HD RP にはカスタム可能な新しいデバッグウィンドウが搭載されており、これにより、デバッグの表示モードとレンダーパイプラインの設定を制御できます。このデバッグウィンドウは Unity エディター内のみならずどんなプレイヤーでも使用できます。そしてすべてのデバッグ機能が PlayStation 4 を含むすべてのターゲットデバイスで使用可能となっています。

Unity エディター上のデバッグウィンドウ(通常のプロパティ表示の状態)

デバッグウィンドウでは、不透明・透明の両方のマテリアルのプロパティを、デファ―ドあるいはフォワードレンダリングパスで表示できます。

ライティングのデバッグ表示(拡散ライティングのみの表示・反射ライティングのみの表示)も可能です。シーン全体に適用されるプロパティ(法線、アルベド、スムースネスなど)のオーバーライドも行え、モーションベクターやデプスバッファなどの中間的なレンダーターゲットを表示することもできます。その他にも、特定のプロパティ(「ライトマップを使用したオブジェクト」「テッセレーションを使用したオブジェクト」など)の強調表示や NaN チェッカーなど、様々な機能を備えています。

プレイヤー内のデバッグウィンドウの例(拡散ライティングモードでアルベドをオーバーライドした状態)

カラーピッカーモードも面白いモードのひとつです。これは、現在の画面上の値や HDR 値をポストプロセッシングの適用前に読み出すものです。

デバッグウィンドウは簡単に拡張可能で、AI やアニメーションデバッグツールなど、ゲームに必要な任意のデバッグツールに対応させることができます。

新しい挙動

HD RP には従来の Unity 組み込みのレンダーパイプラインとは異なる新しい挙動が搭載されています。

デファ―ドとフォワードのレンダリングパスが同じ機能セットをサポートしています。サブサーフェススキャタリング(表面下散乱)、スクリーンスペースアンビエントオクルージョン、およびデカールは、両方のパスで同様に機能します。特定の機能を使用するためにどちらか特定のレンダリングパスを選択しなければならないという事はありません。

HD RP はカメラに対する相対的なレンダリングを採用しています。つまり、ワールドの原点から遠く離れていたとしても精度の高いレンダリングが行えるということです。これは HD RP で使用されるすべてのシェーダーに影響します。

カメラは、どのライティングアーキテクチャを使用するか(デファ―ドおよびフォワードレンダラーパスをシーン内で組み合わせ可能)と、そのレンダリングにどの機能を有効にするかを制御できます。フォグ、シャドウ、ポストプロセッシングなどを無効にすることもできます。

シーン設定のセットアップには、ボリュームの設定をベースとしたまったく新しいシステムが採用されています。これはポストプロセッシングで使用されるものと類似しています。シーンの設定(空、太陽光のカスケードシャドウ、スクリーンスペースシャドウの接触設定など)をボリューム毎に設定でき、パラメーターを補間してボリューム間の遷移を滑らかにすることが可能です。

また、空とフォグ用に新しいオプションが追加されています。高さに応じたフォグや、空の色で彩色されたフォグなどです。また、フォグは不透明・透明の両方のマテリアルに影響を与えます。

最後に、レンダーターゲットのアロケーションに関して HD RP は専用のシステムを採用しており、画面をリサイズするたびに再アロケーションしなくても済むようになっています。このため、例えば動的解像度の使用時などに余計なターゲットアロケーションの発生が回避されます。

制限事項

HD RP は現在も開発中であるため、一部の機能は未完成であったり、不具合があったりします。Unity 2018.1 と共にプレビュー版が公開されますが、まだプロダクト開発にお使いいただけるレベルにはありません。

現時点における制限事項で重要なものは、HD RP は Unity のパーティクルシステムで作成された Lit パーティクルと互換性がないことです。互換性があるのは Unlit パーティクルのみです。

また、ビルトインのテレインシステムには様々なアーティファクトがあります。

すべてのスクリプタブルレンダーパイプライン(SRP)に言えることですが、ライトのレンズフレアなど、以前 Overlay レイヤーでレンダーされたものにはすべて非対応です。Grabpass はなくなっています。

今後の開発予定

開発チームは現在、安定化およびプラットフォーム対応の作業を集中的に進めていますが、ボリューメトリックライティングなどの目玉機能も公開予定です。

エリアライトは Unity Labs チームによる調査・研究に基づいて改善される予定です。

より一貫性のあるライティングとポストプロセッシングを実現するための次のステップとして、物理ベースカメラの搭載も予定されています。

また、キャラクターレンダリングツールのいくつかのプロトタイプも開発中です。

Windup プロジェクトの女の子のキャラクターを含むシーンのレンダリング

まとめ

HD RP は、現世代のゲームのビジュアル品質を極限まで高める、Unity のまったく新しいレンダーパイプラインとして公開されます。

これを使用するに当たっての難点を挙げるとすれば、現在の Unity 組み込みのレンダーパイプラインと大幅に異なるために、学ばなければならない事が多いことです。
上記でご紹介したすべての機能が複雑なものです。一元的かつ一貫したライティングの実現は非常に難易度の高い課題です。優秀なデバッグツールの使用は往々にして容易ではなく、カメラに対して相対的なレンダリングを導入すると、今まで以上に熟考が求められます。HD RP 用のカスタムシェーダーの記述も可能ですが、そのために必要とされる知識は以前より遥かに多くなります。しかし、このような課題を乗り越えるに値する結果を HD RP はもたらしてくれるはずです!

Unity ベータプログラム に参加して、新機能をいち早く体験してみてください。HD RP の開発状況は GitHub で随時ご確認いただけます。Unity フォーラムの Graphics Experimental Previews のセクションで HD RP についてお話しできるのを楽しみにしています!

HD RP および複雑なマテリアルを使用した、独自のスタイルを持つゲーム環境の例

 

64 コメント

コメントの配信登録

コメント受付を終了しました。

  1. SmartPolygon

    5月 7, 2018 4:45 pm

    Any ETA on SSR and ShaderGraphEditor for HDSRP?

  2. I have more doubts.
    1. Could I create a project using HD-RP and after update to new unity version using new HD-RP?
    2. I have tested alpha cutoff but it doesn’t work. I’m using Beta 2. Am I doing something wrong?

  3. Hi, I have some doubts about that.
    First of all, great work. I have tested and it looks amazing.
    1. So, I noticed that terrain is not working yet using HD Render Pipeline. Do you know what beta version it will be working?
    2. If selected HD-RP template when creating a project, could I disable later?
    3. With no terrain working yet, what must I do to create map?
    4. How could I create vegetation with cutout option? I have created a grass and plant that parts of texture must be hide/disappear.

    1. Sebastien Lagarde

      4月 26, 2018 3:59 pm

      Hi,

      1. HDRP don’t support terrain. We have no ETA about supporting current terrain system. But we are aware of the problem.

      2. Converting from/to HDRP is painful, material, lighting, settings are different. I will not recommend to start a project with HDRP then switch to non HDRP (unless the project is not graphic focused, but then there is no need for using HDRP).

      3. Our artists have used static mesh (See for example: https://blogs.unity3d.com/2018/03/12/photogrammetry-in-unity-making-real-world-objects-into-digital-assets/) but we know this can’t fit all usage.

      4. You enable: “alpha cutoff enable” on the lit material

      1. I have tested the alpha cutoff but it doesn’t work as expected. I’m using beta 2.0.

      2. I have tested and alpha cutoff doesnt work as expected. I’m using beta 2.

  4. I’m so excited for this to be done. Looks incredible.

  5. Please make computing enlighten on GPU, It’s pain in butt to wait long time computation on cpu.

  6. Can I find somewhere sample project? I like to test how it’s looking on VR :)

    1. Sebastien Lagarde

      3月 29, 2018 6:56 pm

      Please look here for a project: https://blogs.unity3d.com/2018/03/12/photogrammetry-in-unity-making-real-world-objects-into-digital-assets/

      As say in the blog post, VR is not supported yet.

  7. Nice the light settings are kinda heavyweight! – but actually very useful to simulate indoor lighting products for the kind of pre-viz stuff I have looked at.
    If I could simulate (more loosely) temperature and lumens in other lighting pipelines it would also be good.
    Or perhaps a scalable pipeline for indoor vizualisation could be made

  8. The last picture with the SSS looks absolutely bloody gorgeous, and the tree with the hole in it is incredible.
    Could the artists share their experience making these?

    1. Sebastien Lagarde

      3月 29, 2018 7:00 pm

      Sorry, unrelated to this blog post.

      1. Sebastien Lagarde

        3月 29, 2018 7:02 pm

        Arf, wrong reply,
        so for:
        > Please make computing enlighten on GPU, It’s pain in butt to wait long time computation on cpu.
        Sorry not related to this post

        For the SSS question, nothing special here, it is just assigning a diffusion profile to the object and make use of SSS. But yes, tutorial and doc for this are plan and will come later.

  9. That is all fine and dandy. Unity Tech finally realized, that a modern rendering pipeline is important to many devs, who do not work on mobile titles.
    For me this comes a bit too late, for my current project. So I use another engine that starts with an “U”.
    The biggest problem here is, this is far from being production-ready. And given UT’s track record, it will be for a long time.
    I really hope UT get’s this right. But I fear this becomes another Umbra-, Enlighten-, GUI-, or Terrain-Desaster.

    1. Robert Cummings

      3月 18, 2018 9:11 am

      So instead of being an adult, continuing with your engine of choice which is obviously Unreal, you decide to come to the blog purely to rant? haha.

      1. Not really Robert. Not if you had read my post properly. I actually would see this becoming a success. But I see this was this with a lot sceptism, based on my over 8 years of experience with Unity. And I still use Unity for my every day work as an freelance artist. For my own project though, Unity’s rendering and performance capabilities are simply not sufficient enough. And I can not count on some promises. Especially if they come from UT.

        By the way. No need to attack me personally, because you might disagree with me. Your post isn’t what I would call mature either.

        1. Alan Mattano

          3月 19, 2018 3:30 pm

          It can be interesting if somebody is capable of integrating the Unreal rendering (and paying the Unreal royalties for) into the feuter Unity Scriptable Render Pipeline. You are sceptical about Unreal 20yr rendering experience will bit this incoming 2018~19 Unity High Definition Render Pipeline? Well, that is compressible. But I like how Unity renders and Unity progress in the only last 8Yr!

  10. Hello. Did i understand correctly that the High Definition Render Pipeline have much better performance on modern consoles(Amd GCN architecture) in comparison with the Unity’s default render?

    1. Sebastien Lagarde

      3月 29, 2018 6:52 pm

      yes

  11. We would like to see some complete video tutorias with all steps not just nice pictures.

    1. Kristyna Hougaard

      3月 19, 2018 12:12 pm

      We will show some more details in our GDC keynote, live streamed later today: https://unity3d.com/gdc-2018. Subscribe to Unity on YouTube for more, there’ll be tutorials, live training, etc., this is just a first look. https://unity3d.com/gdc-2018.

  12. Hello, what’s lumen is it?
    Do you know that sun intensity IRL actually is 3,63*10^28?
    So, how you will approximate that value?

    1. Sebastien Lagarde

      3月 17, 2018 9:55 pm

      Hi,
      we haven’t written documentation yet but you can found more information about what it is and the implication here (from artists point of view): https://www.gdcvault.com/play/1023284/Lighting-the-City-of-Glass. Otherwise programming side, there is lot of details here: https://seblagarde.wordpress.com/2015/07/14/siggraph-2014-moving-frostbite-to-physically-based-rendering/ (in Lighting section of the course note).

      Sun in HD use Lux at ground level for practical reason: Easy to measure with a lux meter, several reference on the internet, easy to calibrate with HDRI (https://seblagarde.wordpress.com/2016/08/28/siggraph-2016-an-artist-friendly-workflow-for-panoramic-hdri/)

      Technical note: Having Sun in lux at ground level is the same code than in Built-in Unity (with a PI multiply), so there isn’t difference.
      But physical unit make sense only if lighting use quadratic attenuation and if the scene use real world metric (1unit == 1m in Unity). Thus why in Built-in Unity there is no mention of unit for light.

  13. Decals. Finally.

  14. Wow! HDRP is very gorgeous! Of course I can’t use this for production games, but definitely use for realtime movies. Can’t wait to try it now.

    1. Sebastien Lagarde

      3月 17, 2018 11:27 am

      >I can’t use this for production games, but definitely use for realtime movies.
      I don’t understand your conclusion, or maybe the message is not clear?

      Follow the link: https://blogs.unity3d.com/2018/03/12/photogrammetry-in-unity-making-real-world-objects-into-digital-assets/
      This is a demo running on PS4 @1080p @30fps, there is (very rudimentary) gameplay to show “game-like” experience.

      HD target games. If it was for movies only we will not have put so much restriction in it :)

  15. Saliva! What do I do with all this saliva!

  16. Is the Viking Village image posted in error? I can’t see a difference…

    1. Here are my observations, after splitting the image into two: the water is different, SSAO looks better and buildings in the background are lit better.

    2. Sebastien Lagarde

      3月 17, 2018 10:53 am

      There is confusion about the purpose of showing the comparison with Vikking Village. The goal here was just to show that it is possible to upgrade a project with the upgrader + some manual re-work to get a similar scene. So yes they are pretty close. But Vikking village don’t use any of the features bring by HD RP (low use of reflection probe, no complex material, etc…) and Enlighten use by vikking village is still not using inverse square lighting in this Preview version (only progressive lightmap does), so why it look so close.

      So note here for people: Progressive lightmapper is using correctly inverse square attenuation but not Enlighten, this will be fix in 2018.2

  17. So is this a tool for the big studios only? Or say sometime in 2019 when it matures will small Indies and/or freelancers be able achieve AAA visuals out of the box? Or does it require full-time technical artists to achieve the results shown in the pics? At the very least will you release a cookbook for HD RP for us mere mortals?

    1. Sebastien Lagarde

      3月 17, 2018 11:02 am

      >So is this a tool for the big studios only?
      No, anyone can use it (as long as you don’t need to modify the code for your project). But with more option available, it require more learning. If you don’t use these news features it is fine (But then you don’t need to switch to HD if you don’t use the new features).

      >Or does it require full-time technical artists to achieve the results shown in the pics?
      Tech doesn’t make anything pretty, only artists does it. So you can’t expect to have beautiful result without having good artists.
      If you want to use tessellation for example you need to author extra data like heightmap, doing process like authoring high poly mesh and baking data on low poly mesh to get the best visual result require some experience etc… Or you can rely on well authored asset like the one from Quixels.

      But again, you can just provide a diffuse and normal texture to lit shader and it work. See Vikking Village.

  18. Ippokratis Bournellis

    3月 17, 2018 12:11 am

    Congratulations for graphics team vision and achievements – these still images look great.

    Problems.
    1. It is not ready – will not be available for production for some time after that and buggy for some time after that, so in the best case, half of 2018 is gone.
    2. Lightweight shadows suck – they are awfully awful bi-linear – the nicer shadows that HD brings will not be available for production as seen above, this leaves as for some time without nice shadows.
    3. No proper shader documentation or examples for those who try the beta to adapt their shaders – new semantics and paradigms in shaders without any documentation – plus beta per se is buggy, it crashed several times in 3 hours.
    4. No video demonstration – a subtle problem in current rendering implementation is that when there are shiny reflections in the scene, they look juggy and unstable from frame to frame – they kinda swim – no matter what anti-aliasing – temporal or not you throw in, as seen in every unity Adam demo. Is this problem fixed ?
    5. All these features seem pretty heavy – is it possible to get nice shadows in Lightweight pleeeeeeease ???? Jokes aside, I believe that if the shadows in Lightweight do not see some improvement, having to use the HD (when it is ready) and paying the extra resources it (logically) demands just to have nice shadows seems as an overkill.
    7. I hear about the SRP since I was using Unity 5 – which is good, but so far I have seen nothing ready for production. Last fall I watched with great interest Joachim Ante presentation regarding SRP and unity programming architectural restructuring, which was essentially what Mike Acton used to say about data oriented design years ago and now Mike Acton works for Unity – which is great. Sebastien Lagarde is a legend in computer graphics – so many highly-skilled people work for Unity now, which is super. But SRP is not here yet, after all this time and after all this effort. I do not like this delay.
    7. The way rendering pipeline changes was extremely annoying so far – many changes in core shader code without any warning – scarce examples and documentation – it is gonna be a hell from now on because lightweight and HD pipelines are not yet finalized – documented, so we will undergo a long period of intense changes. I sincerely believe that some part of Unity growth was due to the “ease” you could manipulate the shaders – it was not a piece of cake but many people managed to do it with nice results, e.g. Monument Valley, Limbo, e.t.c. If as you say you ‘re gonna make it more difficult to code shaders (hopefully by offering AAA quality and speed in exchange), you should take the responsibility to produce proper documentation and examples from day -1.

    Kind regards.

    1. If you think things can magically be done with a push of a button, the world will be either totally destroyed or a better place to live. Ok jokes aside. Yeah it’s not production ready because hey “still relativelly new”. Sebastien clearly said that is not recommended for projects already in production, only projects that starts now. It will/should be ready for production by the end of the year.

      1. Ippokratis Bournellis

        3月 18, 2018 9:35 am

        In mr Lagarde’s words “I will not recommend HD for anything that is already started. I “may” recommend it for a new project that will start its pre-production today. And will ship mid-next year or later”. – it is written a few posts below.
        As I understand it, you either opt for lightweight pipeline (the one with awful shadows), or the existing rendering pipeline, which will soon become legacy. What is annoying with the second option is that the more people are using legacy, the slower the transition will be towards the new pipeline.
        I am very reserved in criticizing Unity – check my 1475 posts from the past 10 years – and I find very disappointing the fact that the above concerns are not addressed.

  19. Amazing stuff. Will lit particles and lens flares eventually make it into the HD SRP?

    1. Sebastien Lagarde

      3月 17, 2018 11:08 am

      There is plan for lit particles of course, but I can’t speak about it for now. Not available.

      For Lens Flare, for sure we want to deprecated current Built-in Lens Flare of light for SRP. Other stuff will come but later in the future. If you look at Unity demo, you can see that they have done their own lens flare (This is what project usually do).

      1. Thanks for taking the time to respond to the comments. Much appreciated.

  20. matt radford

    3月 16, 2018 10:06 pm

    Really cool stuff guys! Since i’m creating a more dynamic game with quite customized graphcs im curious if unity is still going to leave a door open for really easily customizing its deferred renderer. I’m using the gbuffers unitys creating right now and doing all sorts of stuff with them. Is this not recommended. When are you going to remove the Deferred rendering pipeline. I got roped into using unityscript when i first started and it was subsequently destroyed. Do you think abadoning the deferred renderer in unity currently is recommended?

    1. Sebastien Lagarde

      3月 17, 2018 11:22 am

      > a door open for really easily customizing its deferred renderer.
      In HD it is possible to customize the GBuffer: Adding extra GBuffer is easy, replacing material type, changing layout is not too difficult etc… The best is to remove all features/case that you don’t need and do your own customization.

      But there is so much different project that we can’t advise what to do case by case. What we will document is only what we have done and the dependency (why for example diffuse need to be in RT0 so it work with SSS even in forward). Many of our choice are driven by performance and the ability to have same feature in forward and defered, we have implemented material classification and spend good amount of time of minimizing VGPR pressure for AMD GCN GPU (use on console) for example. Any change to the GBuffer will not benefit from it and you will need to redo it (if performance is important for your project).

      >When are you going to remove the Deferred rendering pipeline.
      >Do you think abadoning the deferred renderer in unity currently is recommended?
      This is unrelated to this blog post. HD is available as Preview (i.e experimental), Built-in Unity is available. You decide what fit your project need.

  21. Diarmaid Malone

    3月 16, 2018 8:59 pm

    Is there an approximate release window for 2018.1? I’m looking forward to playing with these new features and getting used to the changes but should I expect it in the next few weeks for 2/3/4 + months?

  22. Sergey Klimenko

    3月 16, 2018 8:02 pm

    Ooh, come on !!! Well, when already! I’m so tired of waiting! Tried SRP from the first days as it was let into people, Job System and ECS, this is the only thing I expect no less than the SRP.

  23. I am a bit worried about this pipeline and the ability to scale down its features to run on lower-end hardware. Is it being designed particularly for computers with powerful graphics cards, with little or no support for less capable computers? Could I use the HDRP, but turn off some of the more expensive features (without programming) to get it run well on a low-range graphics card, or heck, current-gen integrated graphics?

    I’d be very disappointed if Unity is only optimising this for a small subset of hardware, because the LWRP is missing a lot of features from the rendering we currently have, let alone some of the new features of the HDRP.

    1. Sebastien Lagarde

      3月 16, 2018 7:42 pm

      > Is it being designed particularly for computers with powerful graphics cards, with little or no support for less capable computers?
      Exactly. Typical target is console processing power.

      If Built-in Unity was suiting your need, there is no reasons to change, HD is not a replacement of Built-in Unity it fill a hole in the high-end field. If you are looking for performance for low-end platform then use Lightweights. Lightweight will be improve with more features in the future.

      1. Thanks for the reply. I’m a bit dissapointed by it. The HDPipeline is only suitable for console platforms if it cannot scale to PC hardware. PCs have a varying range of GPUs. Developers want their games to run on the most computers possible. Catering to small percentage of players with very powerful GPUs doesn’t make it an attractive choice for PC development. We need to be able to provide a stripped down, low quality setting that’ll run well on lower end hardware.

        1. Sebastien Lagarde

          3月 16, 2018 8:52 pm

          What about giving it a try and see if it fit your need? :), that’s the purpose of beta / preview.

          And have in mind that Built-in Unity is available and have make its proof already.

        2. Joachim Ante

          3月 17, 2018 8:16 pm

          I think its important to point out that Console hardware (PS4 and XBoxOne) shipped more than 4 years ago. We are definitely not talking about high-end PC hardware here. We are talking about average PC gaming hardware that gamers who like to play games actually have.

          DX11 shipped with Windows 7 in 2009. According to Steam hardware stats, 97% of machines on Steam have DX11 capable GPUs.

          So the hardware requirements of the HD RenderPipeline are not very demanding. Performance also depends on the features you use, over which you have a lot of controls.

          The team is very focused on GPU performance of the HD render pipeline.

  24. Sebastien L

    3月 16, 2018 7:07 pm

    It’s interesting to see the new pipeline. It seems to solve problems for me like rendering fog with transparent objects. I have a game in development and I’m wondering if the HD RP will be available for production before the end of 2018. It’s not necessarily a good idea to switch a technology during the development based on availability projection. I’m aware it’s still experimental, but do you have an idea when could be the production release?

    I’m also wondering if that will be compatible with technologies like Amplify Shader Editor.

    The current pipeline does not allow to create procedural games with graphics as beautiful as the baked scenes. I want to suggest that you think about creating procedural games with the new pipeline. For example, being able to create light probes at runtime to take advantage of them in a better way than always being restricted to the baked scenes to achieve realism.

    1. Sebastien Lagarde

      3月 16, 2018 7:36 pm

      >I have a game in development and I’m wondering if the HD RP will be available for production before the end of 2018
      I will not recommend HD for anything that is already started. I “may” recommend it for a new project that will start its pre-production today. And will ship mid-next year or later.

      HD currently still heavily relying on current GI baking system. Motivation to move to HD shouldn’t be drive by the will of not using it.

      >I’m also wondering if that will be compatible with technologies like Amplify Shader Editor.
      Not compatible. The editor will require to update their tool but it is a lot of work. Unity is working on its own shader graph and we are still developing support for HD RP, this is not ready.

      I take the opportunity to stress this message. If you still want to attempt a migration, all custom shaders need to be fully rewritten.
      HD use a totally different set of shaders and framework. This task could be extremely time consuming and error prone.

      1. Hi Sebastien,

        When you say “HD currently still heavily relying on current GI baking system” this covers real time GI as well, right? i.e you mean there’s still some baking required, it can’t all be updated at runtime, but It’s not all fully baked lighting only, or did I misread the blog post?

        Does the ability to set volumes for different lighting settings mean we can control transitions between indoor and outdoor areas of a scene without having to call RenderSettings.ambientLight which is prohibitively expensive in most cases?

        NB: apologies for misspelling your name in my previous post.

        1. Sebastien Lagarde

          3月 17, 2018 10:47 am

          Sorry if I cause confusion in my explanation. GI is handled the same way than in Built-in Unity. That’s what I mean. So progressive lightmapper, Enlighten, Shadow mask etc…

          >Does the ability to set volumes for different lighting settings mean we can control transitions between indoor and outdoor areas
          The volume system will allow to unlock time of day in the future, but this is not possible currently (For various reasons of current integration of Enlighten in Unity) – Still artists should be able to do some workaround.
          For bake lighting the volume system have dedicated settings separate from runtime settings.

      2. Enlighten GI still supported, right? Only baked indirect light would be Very bad news

  25. Thanks for sharing this. Will there be another way to create lens flares on the sun? It’s a big part of BrightRidge’s look.

    1. Sebastien Lagarde

      3月 29, 2018 6:55 pm

      Currently Lens flares need to be created by artists (old school way), this is how our project do it.

  26. “VR support is planned, but not implemented in the currently available preview.”

    /slams door
    /runs from room crying

  27. “VR support is planned, but not implemented in the currently available preview” – is it going to be availible in the 2018.1 release?

    1. Sebastien Lagarde

      3月 16, 2018 6:07 pm

      No, the blog post is about 2018.1. No ETA for VR for now

  28. Mylk The Funky Homosapien

    3月 16, 2018 5:16 pm

    Will the Shader Graph be supported with HD Pipeline in 2018.1 release?

    1. Sebastien Lagarde

      3月 16, 2018 5:31 pm

      Not for 2018.1. There is a prototype but it is restrictive (mainly to allow compatibility between builtin, LW and HD)

  29. Keith O'Conor

    3月 16, 2018 5:15 pm

    Will the Switch be able to use the HDRP, or will it be too heavy?

    1. Sebastien Lagarde

      3月 16, 2018 5:32 pm

      There is people working on Switch support, once done we will evaluate if performance is worth it to support. Can’t tell more for now.

  30. This is really exciting stuff. Great to see Unity’s 2018 direction really beefing up the engine in massive ways across the board. Seeing the words, “Unified and coherent lighting is extremely hard to achieve” coming from someone as skilled as Sebastian scares the living daylights out of me though! My only plea is for lots of documentation, examples and learning resources :-)

  31. Great work guys. I’m really happy about your mindset of making this big “breaking change” that isn’t necessarily the most user-friendly thing ever. Unity has been in dire need of something more serious and professional for a long time, and the HDRP (and ECS and Job System) is exactly that!

    Surely this won’t make everyone happy but I 100% encourage you to continue in that direction