HDRコンテンツをどのように作成しますか?


33

アーティストがHDRレンダラーのコンテンツを簡単に作成できるようにするにはどうすればよいですか?LDRからHDRに移行する際に、どのような種類のツールを提供し、どのワークフローを変更する必要がありますか?

HDRレンダラーの実装の技術的な側面についてではなく、HDRでマテリアルとライティングを作成するためのベストプラクティスについて尋ねていることに注意してください。私は少しグーグルで調べましたが、ウェブ上でこのトピックについてはあまりないようです。誰かがこれに関するいくつかの良いリソースを教えてくれたり、自分の経験を共有したりできますか?

特定のポイント:

  • 照明-照明アーティストはどのようにしてHDR光の色を選ぶことができますか?標準のLDRカラーピッカーと乗算器がありますか?乗数はガンマ空間ですか、それとも線形空間ですか?乗数ではなく、対数輝度でしょうか?または、ルーメンの数などの物理的な明るさレベルですか?彼らはどのように乗数/輝度/明るさが与えられた光に対して「正しい」かをどのように知るのでしょうか?
  • マテリアル-テクスチャアーティストは、ネオンサイン、テレビ画面、スカイボックスなどの放射性カラーマップをどのように作成できますか?1つを通常のLDR(チャネルあたり8ビット)イメージとしてペイントし、乗数(または対数輝度など)を適用できますか?HDR画像を実際にペイントする必要がある場合はありますか?もしそうなら、Photoshop(または他のソフトウェア)でこれをどのように行いますか?

3
これは役に立つかもしれません:developer.valvesoftware.com/wiki/HDR_Skybox_Creation
Tetrad

1
@Aralox、私は他のチーム/会社がこれをどのように行うかについて何も発見していません。私たちは私の会社でこのテーマに取り組んでいますが、それについて何も公表することはできません(まだ)。しかし、最終的にはワークフローについて話せるようになることを願っています!
ネイサンリード

1
写真ソースを使わずに HDRコンテンツオーサリングすることについて、人々が何と言っているか本当に知りたいです。

1
これは古代の歴史であることに注意してください。しかし、はい、外のライトは文字通り洞窟のライトよりもはるかに明るく設定されており、レンダリングエンジンは対処する必要がありました。ボリュームは、アンビエントおよびトーンコントロールに使用されました。アイデアは、岩自体はHDRにならず、ただの岩であり、それに当たる光が、レンダリングがグレーの露出であると考えるものに対して、それを本当に明るくまたは暗くするというものでした。「露出」がプレーヤーの位置に合わせて調整し続ける初期のHDRを見たことがあると思います。時の流れ。
パトリックヒューズ

2
私には写真の背景があります。「外」は適度に照明された洞窟の入り口の「内」よりも4〜5 fストップ明るいという本能的な呼び出しです。
パトリックヒューズ

回答:


5

パトリック・ヒューグスが彼のコメントで説明している「穴居人の時代」にはまだ何とかいると思います。

レンダラーの実装に関する詳細は必要ありませんが、とにかく物事を明確にしておきます。理由は理解できます。ゲームエンジンのHDRは、主にレンダリング出力(フレームバッファー)に「より広い」値を設定することに関するものです。通常、[0,1]範囲の256個の値を提供する8ビット整数ではなく、1.0を超える16ビット浮動小数点。この出力は、トーンマッパーを使用してLDRに変換されるため、画面に表示できます。私にとって、本当の「HDRオーサリング」は、このトーンマッパーを微調整することにあるので、この上でアーティストにできる限り多くのコントロールを与えたいと思うでしょう。何らかのシェーダーが関係するため、それに対処できるテクニカルアーティストがいるか、ハードコーディングして最も有用なパラメーターを公開します。

私はあなたが必ずしもだろうということではないよ必要かもしれEMITが「白よりも白く」というライトを作成する場合を除き、16ビットのライトを。しかし、必要に応じて、ライトに使用するエディターで、これらの浮動小数点値を提供する何らかの種類のカラーピッカーまたはスライダーが必要になります。ああ、GUIが必要な場合は、ファイル内のプレーンテキストの浮動小数点値から始めることになるでしょう。

HDRテクスチャ(チャネルあたり16ビット)は存在しますが、広く使用されていません。おそらく、通常のLDRテクスチャ(チャネルあたり8ビット)よりも多くのメモリを必要とするからです。また、現在の世代のコンソールではハードウェアの制限が増えると思われるので、大規模なゲームエンジンのほとんどはこれをあまりプッシュしません。インスタンスでは、UDKで使用するHDRテクスチャをインポートするは少し難しいようです。それでも、16ビットテクスチャを作成するには、Photoshopなど、それをサポートするソフトウェアが必要です。おそらく他にもありますが、それほど頻繁ではないようです。例えばそれはそれはだったGIMPのための長年の要求 それはまだ保留中です。また、PNGなどの16ビット対応の画像形式を使用する必要があります。


1
UDK内でライトがどのように編集されるかを確認しました。8ビットのカラー値を持つ古典的なRGBカラーピッカーを使用し、1.0を超えることができ、3つの色すべてを同時にスケーリングする「輝度」係数が追加されているようです。
ローランクーヴィドゥ

1

lorancouが言ったように、一般的に光量に応じて動的であるため、hdrコンテンツを実際に作成することはできません。ただし、ライトマップでそれを模倣することもできます。これは、事前計算シェーダーを変更してそれを考慮するだけです。


1

さて、3年後、HDRコンテンツのオーサリングに関するブログ記事を書きましので、自分の質問に答えることができます。:)

要約する、

  • 広範囲のHDR輝度値を処理する良い方法は、対数目盛を使用することです。写真家は、露出値またはEV と呼ばれる数十年にわたって使用しているスケールを持っています。
  • エンジン/ツールでEVを使用すると、実際の生活で写真家のスポットメーターで測定した値をゲーム内の照明を設定するための参照データとして使用できるため便利です。Photoshopは、32ビットモードでEVを使用します(EVとは呼びません)。
  • 光源、発光材料などのカラーピッカーには、通常のLDR RGBコンポーネントと、HDR全体の輝度を調整するEVコンポーネントを組み合わせることができます。これは、明るさだけを変更したいとき、またはその逆をしたいときに誤って色を変更するのを防ぐのに便利です。
  • 通常の拡散マップと鏡面反射マップにHDRテクスチャを用意する必要はありませんが、エミッシブテクスチャに便利です。ここでBC6圧縮が必要です。BC1テクスチャが高輝度に拡大されると恐ろしいバンディングとアーティファクトを示すためです(ネオンサインなど)。
  • 通常、実際に発光テクスチャを浮動小数点でペイントする必要はありません。Photoshop 16ビットモード(固定小数点)は、おそらくエミッシブテクスチャに十分でしょう。ただし、Photoshop 32ビットモードでは、必要に応じて、非常に優れた浮動小数点画像編集サポートが提供されます。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.