gdc2004_piohdrr_jp.ppt(日本語版5.42mb)-daionet.ppt

gdc2004_piohdrr_jp.ppt(日本語版5.42mb)-daionet.ppt

  1. 1、本文档共73页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
gdc2004_piohdrr_jp.ppt(日本語版5.42mb)-daionet

Practical Implementation of High Dynamic Range Rendering Masaki Kawase BUNKASHA GAMES BUNKASHA PUBLISHING CO.,LTD http://www.daionet.gr.jp/~masa/ / 本日の内容 HDRで何が変わるのか HDRレンダリングのトピック DX8ハードウェアでのHDR実装 DX9ハードウェアでのHDR実装 グレア生成 露光調整 ゲームでのHDR表現について 参照 HDRで何が変わるのか 眩しい光の表現 眩しい反射光の表現 フレネル反射 正面方向への明るい光源の反射 露光調整の演出 リアルな被写界深度表現 リアルなモーションブラー 眩しい光 眩しい反射 HDRフレネル 露光調整の演出 HDR被写界深度処理 HDRモーションブラー HDRレンダリングのトピック ダイナミックレンジ HDRバッファレンダリング グレア生成 露光調整 トーンマッピング ダイナミックレンジ 最も大きい値と最も小さい値の比 ディスプレイアブルイメージ 28 ローダイナミックレンジ(LDR) 絶対輝度のフレームバッファ シーンを絶対的な輝度でレンダリング 232以上 全ての輝度を絶対的に表現 相対輝度のフレームバッファ シーンを露光でスケーリングしてレンダリング 215~16以上 輝度の低い部分は重要ではない HDRバッファレンダリング フレームバッファ グレア生成のため 環境マップ 反射率が低くても輝度をクランプさせないため 眩しい反射表現のため 自己発光テクスチャ レンダリング後グレア生成のため デカールテクスチャはHDR不要 フレームバッファのHDR グレア生成のため 相対輝度でのレンダリングなら 理想的には215~16以上 ゲーム映像では 212~13(4000~10000)程度で許容できる 環境マップのHDR 非常に重要 リアルな鏡面反射表現のため 眩しい鏡面反射表現のため 非金属の鏡面反射率 正面への反射率は4%以下がほとんど 明るい光源は4%以下の反射後も充分に眩しい 1~4%程度の反射後も眩しさを維持したい ダイナミックレンジで10000~20000以上 DX8ハードウェアでのHDR実装 選択の余地は無い ピクセルシェーダ1.x 整数演算のみ HDR用バッファフォーマット 低精度バッファのみ αチャネルを輝度情報として利用 フェイクでそれらしく表現 正確な演算は不可能 フェイクHDRピクセルシェーダ 光沢反射マテリアル フェイクHDRピクセルシェーダ 自己発光マテリアル ディスプレイイメージの生成 グレア生成用の高輝度成分抽出 Threshold 0.4~0.5程度のしきい値 グレア生成 ディプレイアブルイメージ生成 フレームバッファから輝度を計算 輝度にグレア生成結果を加算 高輝度成分抽出シェーダ // 高輝度成分抽出ピクセルシェーダ // Out.rgb = FrameBuffer.rgb * ( (1 - Threshold) / 16 + FrameBuffer.a ) // t0.rgb : フレームバッファカラー // t0.a : フレームバッファ追加輝度 // // c0.a : 輝度バイアス // (1 - Threshold) / 16 // (0.5~0.6)/16 程度 ps_1_1 tex t0 // フレームバッファ add r0.a, t0.a, c0.a // r0.a = (1 - Threshold) / 16 + Buffer.a mul r0.rgb, t0, r0.a // r0.rgb = Buffer.rgb * ( (1 - threshold) / 16 + Buffer.a ) グレア生成 参照: Kawase, Masaki. “Frame Buffer Postprocessing Effects in DOUBLE-S.T.E.A.L (Wreckless)” 輝度計算/グレア合成 // トーンマップ/グレア合成ピクセルシェーダ // Out.rgb = (FrameBuffer.rgb + FrameBuffer.rgb * FrameBuffer.a^2 * 16) * 2 + Glare.rgb * Glare.rgb // t0.rgb : フレームバッファカラー // t0.a : フレームバッファ追加輝度 // t1.rgb : グレア生成結果 ps_1_1 tex t0 // フレームバッファ tex t1 // グレア mul_x4 r0.a, t0.a, t0.

文档评论(0)

maritime5 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档