[ZZ] HDR the bungie way
http://blog.csdn.net/toughbro/article/details/6755394

bungie 06年,gamefest上的paper。
全文讲的比较系统,有空的话还是看原文的比较好,这里摘录一些我觉得很不错的部分。
补上微云链接:http://url.cn/I4SYbF
Why HDR?
为什么要hdr?简而言之就是更加真实,相比之下LDR失真的地方很多,进而影响了沉浸类游戏对玩家的代入感,
具体到实际的好处,列了这么几点:主要集中在范围和细节的保持上
- 让我们进一步感受游戏中的明亮
- 更好的bloom,glare,
- 自动调节曝光,使得根据屏幕亮度情况可以做到最大程度的保持细节
- 在blending的时候保持细节

- 硬件gamma correct并不是直接做一个pow计算,而是采用一些近似算法,这里有一定的不匹配的状况,
- 因为在photoshop里和现实的不一致,bungie的artist对此很不爽。
- 这种情况的处理可以在photoshop中使用相应的gamma 的profile,这样就一致了
- alpha blending也是可以有硬件支持来做linear space的
- 不过一直在linear space就好了么
- render target
- 理论上是使用dynamic range(ratio of brightest to darkest)
- 但是实际应用的时候不会这么理想,所以把重点放到usable exposure range比较好
- 也就是不会产生色阶的exposure range
- rgbe和rgbm两种encoding方式没有fp16好,但是也不错,只是没有hardware blending
- halo3的cubemap就是用的rgbm,虽然数学上不全对,但是看起来是不错的
- postfx
- bloom和tone mapping都是有curve来矫正的
- 这里有缺失physically准确性
- 但是也不能拘泥了,本身像电影等也都是在physical正确的前提下去根据人的感觉来做矫正



- <span style="font-family:'Microsoft YaHei';">intensity= dot(color, float3(0.3f, 0.3f, 0.3f));
- bloom_intensity = bloom_curve(intensity);
- bloom_color = color * bloom_intensity / intensity;
- </span>
bloom的过程是不停的blur+downsample,然后在up sample回去,得到可以用的bloom buffer。
[ZZ] HDR the bungie way的更多相关文章
- HDR the Bungie Way PPT and demo from MSFT
Gamefest 2006 - HDR the Bungie Way Posted By: Falagard <falagard@hotmail.com> Date: 4/26/07 9: ...
- [ZZ] HDR&ToneMapping
http://blog.csdn.net/toughbro/article/details/6745207 float游戏存储照片blogimage HDR high dynamic range. 很 ...
- Bungie Interview with Halo3 Developer
http://www.realtimerendering.com/blog/tag/bungie/ Digital Foundry interview with Halo: Reach develop ...
- [ZZ] Adventures with Gamma-Correct Rendering
http://renderwonk.com/blog/index.php/archive/adventures-with-gamma-correct-rendering/ Adventures wit ...
- [ZZ] Deferred Rendering and HDR
http://www.gamedev.net/topic/496785-deferred-rendering-and-hdr/ Quote: Original post by jstrohYeah I ...
- [ZZ] RGBM and RGBE encoding for HDR
Deferred lighting separate lighting rendering and make lighting a completely image-space technique. ...
- 基于Fast Bilateral Filtering 算法的 High-Dynamic Range(HDR) 图像显示技术。
一.引言 本人初次接触HDR方面的知识,有描述不正确的地方烦请见谅. 为方便文章描述,引用部分百度中的文章对HDR图像进行简单的描述. 高动态范围图像(High-Dynamic Range,简称HDR ...
- 使用FP-Growth算法高效发现频繁项集【zz】
FP树构造 FP Growth算法利用了巧妙的数据结构,大大降低了Aproir挖掘算法的代价,他不需要不断得生成候选项目队列和不断得扫描整个数据库进行比对.为了达到这样的效果,它采用了一种简洁的数据结 ...
- [zz] 基于国家标准的 EndNote 输出样式模板
基于国家标准的 EndNote 输出样式模板 https://cnzhx.net/blog/endnote-output-style-cnzhx/ 发表于 2013-05-26 作者 Haoxian ...
随机推荐
- 关于Struts2上传文件的最大Size的设置
今天使用Struts2的文件上传控件时,在struts.xml中,将处理上传的action中的fileUpload拦截器的maximumSize参数设置为5000000,上传了一个3M的文件后发现控制 ...
- cocos2dx实现象棋之运动
1.头文件 void moveStone(int moveid, int killid, int x, int y); void moveComplete(CCNode*, void*); bool ...
- Android Studio安装与配置
谷歌已经停止支持eclipse开发android了,转向android studio是大势所趋,笔者由于电脑配置的原因, 以前迟迟不愿意向android studio,现如今因为开始学习materia ...
- SQL 查询45题
表格代码 create table student ( sno ) primary key, sname ) not null, ssex ) not null, sbirthday datetime ...
- WPF常用方法,事件驱动和控件遍历
//初始化数据,默认选中第一项,事件驱动 RadioButton btn = FuncClass.GetChildObject<RadioButton>(this.stackPanel1, ...
- lr_save_var字符串截取总结
函数作用: 将一个变化长度的字符串保存到parameter中. 用法实例: 此处讲解函数: Action() { web_save_timestamp_param("tStamp&q ...
- OutOfMemoryError异常穷举
本文内容的目的有两个:第一,通过代码验证Java虚拟机规范中描述的各个运行时区域存储的内容:第二,在工作中遇到实际的内存溢出异常时,能根据异常的信息快速判断是哪个区域的内存溢出,知道什么样的代码可能会 ...
- IE6/IE7中display:inline-block解决办法
IE6/IE7下对display:inline-block的支持性不好. 1.inline元素的display属性设置为inline-block时,所有的浏览器都支持: 2.block元素的displ ...
- jQuery检查某个元素在网页上是否存在
jQuery选择器有比较完善的处理机制,用jQuery获取网页中不存在的元素也不会报错,值得注意的是,利用$('#tt')获取的永远是对象,即使网页上没有此元素.当使用jQuery检查某个元素在网页上 ...
- LightOJ1051 Good or Bad(DP)
这题感觉做法应该挺多吧,数据规模那么小. 我用DP乱搞了.. dp0[i][j]表示字符串前i位能否组成末尾有连续j个元音字母 dp1[i][j]表示字符串前i位能否组成末尾有连续j个辅音字母 我的转 ...