タグ付けされた質問 「hdr」

3
HDRコンテンツをどのように作成しますか?
アーティストがHDRレンダラーのコンテンツを簡単に作成できるようにするにはどうすればよいですか?LDRからHDRに移行する際に、どのような種類のツールを提供し、どのワークフローを変更する必要がありますか? HDRレンダラーの実装の技術的な側面についてではなく、HDRでマテリアルとライティングを作成するためのベストプラクティスについて尋ねていることに注意してください。私は少しグーグルで調べましたが、ウェブ上でこのトピックについてはあまりないようです。誰かがこれに関するいくつかの良いリソースを教えてくれたり、自分の経験を共有したりできますか? 特定のポイント: 照明-照明アーティストはどのようにしてHDR光の色を選ぶことができますか?標準のLDRカラーピッカーと乗算器がありますか?乗数はガンマ空間ですか、それとも線形空間ですか?乗数ではなく、対数輝度でしょうか?または、ルーメンの数などの物理的な明るさレベルですか?彼らはどのように乗数/輝度/明るさが与えられた光に対して「正しい」かをどのように知るのでしょうか? マテリアル-テクスチャアーティストは、ネオンサイン、テレビ画面、スカイボックスなどの放射性カラーマップをどのように作成できますか?1つを通常のLDR(チャネルあたり8ビット)イメージとしてペイントし、乗数(または対数輝度など)を適用できますか?HDR画像を実際にペイントする必要がある場合はありますか?もしそうなら、Photoshop(または他のソフトウェア)でこれをどのように行いますか?
33 graphics  art  hdr 

1
ブルームが適用されない場合、HDRレンダリングには利点がありますか?
現時点では、環境照明のためにゲームで画像ベースのライトを使用しています。空のキューブマップをサンプリングして、拡散反射光と鏡面反射光を取得します。現時点では、HDRレンダリングパイプラインを使用しています-スカイボックスは16ビットのストレージを使用しています。16ビットのレンダーターゲットに描画し、最後にトーンマッピング演算子を使用して値を0.0〜1.0の範囲にスケーリングし、バックバッファーに描画します。 最近、ブルームポストプロセッサを取り外すと、レンダリングパイプラインのほとんどが基本的に無意味になったことに気付きました。高いダイナミックレンジ値では実際には何も行われません。後処理の最終段階で、ダイナミックレンジ値が低くなるまで処理されます。 低ダイナミックレンジパイプラインを使用し、Photoshopでスカイボックスを手動でトーンマップするだけでもよいと言ってもいいでしょうか。これにより、パイプラインがはるかに簡単になります。HDRデータを取得したいのは、ブルーム以外の理由はありますか?
23 skybox  hdr 

4
HDRはどのように機能しますか?
HDRとは何か、どのように機能するかを理解しようとしています。 私は基本的な概念を理解しており、D3D / hlslを使用してどのように実装されるかについて少し理解しています。 しかし、まだかなり霧がかかっています。 地球のテクスチャと、星として機能する頂点の小さなポイントリストで球体をレンダリングするとします。これをHDRでどのようにレンダリングしますか。 以下に、私が混乱しているいくつかのことを示します。 シェーダーでは値が[0、255]に制限され、[0、1]に固定されるため、テクスチャに基本的な画像形式だけを使用することはできません。バックバッファについても同じことが言えます。フォーマットは浮動小数点フォーマットである必要がありますか? 関係する他のステップは何ですか?確かに、浮動小数点形式を使用してレンダーターゲットにレンダーし、後処理としてブルームを適用する以上のことが必要ですか?(出力はとにかく8bppになると考えています) 基本的に、HDRの手順は何ですか?どのように機能しますか?このプロセス以外に、プロセスを説明する優れた論文や記事を見つけることはできないようですが、基本を少し読み飛ばしているようで、混乱を招きます。
17 c++  hlsl  directx11  hdr 

1
トーンマッピングと目の順応-淡い色と暗い画像
私は目の順応とHDRとともにトーンマッピングを実装しようとしています。実際に実装しましたが、結果に満足できず、何か間違ったことをしたと思います。 私の最終的な画像(後処理前)は、フロートテクスチャの半分に保存しています。2つのヘルパーテクスチャもあります。最初のログは、最後のミップマップにログの輝度とその平均、最小、最大の色を保存します。2つ目は、次のように計算される適応値を格納します。 prevLum + (avgLum - prevLum) * (1.0 - exp2(-adaptionRate)) ここで、prevLumは以前の適応値です(このテクスチャのサイズは1x1です)。対数輝度テクスチャはR8B8G8形式で、2番目はR8です。チュートリアルでは、フロートテクスチャの半分が使用されていることを確認しましたが、私の場合、画像が明るすぎます(ほぼ白)。 最後のポストプロセスシェーダーでは、このコードを使用してアイアダプテーションとトーンマッピングを取得するためにすべての値を使用しています。 float autokey(in float lum) { return 1.03 - 2.0 / (2.0 + log10(lum + 1.0)); } float hejl(in float color) { float x = max(0.0, color - 0.004); return (x * (A * x + B)) / …

1
高い鏡面反射力を持つ鏡面バンディング
DirectXでのレイトレーシングにいくつかの問題があり、特にスペキュラに関する深刻なバンディングの問題があります。高い鏡面反射力(8以上)でバンディングが始まります。これがHDR / LDRの問題なのか、それとも法線や他のベクトルなど、他の何かに関連している可能性があるのでしょうか。 更新 更新については以下をご覧ください。 これは、球体上のブリンフォンに関連するシェーダーコードです。 float3 hitPoint = thisRay.origin + thisRay.direction * bestHit.hitT; float3 normal = normalize(hitPoint - spheres[bestHit.hitID].center); float3 toLight = pointLights[0].position.xyz - hitPoint; float d = length(toLight); toLight = normalize(toLight); float diffuse = max(dot(normal, toLight), 0.0f); float3 v = normalize(thisRay.origin - hitPoint); float3 h = normalize(v + …
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.