Board logo

标题: 什么是HDR? [打印本页]

作者: solopain    时间: 2007-2-20 23:19     标题: 什么是HDR?

谈论游戏画面时常说的HDR到底是什么呢?HDR,本身是High-Dynamic Range(高动态范围)的缩写,这本来是一个CG概念。HDR的含义,简单说,就是超越普通的光照的颜色和强度的光照。计算机在表示图象的时候是用8bit(256)级或16bit(65536)级来区分图象的亮度的,但这区区几百或几万无法再现真实自然的光照情况。目前普通的图片都是由三原色——红、绿、蓝组成的,这是针对CRT显示器显示的图像而制定的规范,通过这三种颜色的组合,任何颜色都可以在屏幕上显示出来,颜色的强度等级在256个灰度单位以内,经常使用绘图工具(比如Photoshop)的玩家至少会对256这个数字很眼熟。也就是说,普通的图形文件每个象素只有0 - 255的灰度范围,这实际上是不够的。上述的规格是在从前计算机制造工艺不发达的前提下作出的折中选择,也就是说自然界的光线颜色和强度是上述的规格无法囊括的,一些极亮和极暗的光线不能通过上述的规格来表现。那么HDR文件是一种特殊图形文件格式,它的每一个像素除了普通的RGB信息,还有该点的实际亮度信息。想象一下太阳的发光强度和一个纯黑的物体之间的灰度范围或者说亮度范围的差别,远远超过了256个灰度单位。因此,一张普通的白天风景图片,看上去白云和太阳可能都呈现是同样的灰度/亮度,都是纯白色,但实际上白云和太阳之间实际的亮度不可能一样,他们之间的亮度差别是巨大的。因此,普通的图形文件格式是很不精确的,远远没有纪录到现实世界的实际状况。所以,现在我们就要介绍一下高动态范围图像(简称HDRI)。

    什么是HDRI?

    HDRI是High-Dynamic Range (HDR) image的缩写,也就是高动态范围图像,就是为了解决这个问题而发明出来的,简单说,HDRI是一种亮度范围非常广的图像,它比其它格式的图像有着更大亮度的数据贮存,而且它记录亮度的方式与传统的图片不同,不是用非线性的方式将亮度信息压缩到8bit或16bit的颜色空间内,而是用直接对应的方式记录亮度信息,它可以说记录了图片环境中的照明信息,因此我们可以使用这种图象来“照亮”场景。有很多HDRI文件是以全景图的形式提供的,我们也可以用它做环境背景来产生反射与折射。这里强调一下HDRI与全景图有本质的区别,全景图指的是包含了360度范围场景的普通图象,可以是JPG格式,BMP格式,TGA格式等等,属于Low-Dynamic Range Radiance Image,它并不带有光照信息。


什么是HDRI文件?

    HDRI文件是一种文件,扩展名是hdr或tif格式,有足够的能力保存光照信息,但不一定是全景图。Dynamic Range(动态范围)是指一个场景的最亮和最暗部分之间的相对比值。一张HDR图片,它记录了远远超出256个级别的实际场景的亮度值,超出的部分在屏幕上是显示不出来的。可以这样想象:在photoshop里打开一张从室内往窗外外拍的图片,窗外的部分处在强烈的阳光下,曝光过度,呈现的是一片白色,没有多少细节。你将毫无办法,调暗只会把白色变成灰色而已,并不会呈现更多的细节。但如果同一场景是由hdr纪录的话,你减低曝光度,原来纯白的部分将会呈现更多的细节。

    什么是HDR特效?

    现在将HDR和游戏联系起来。HDR在游戏中特指HDR特效。HDR特效是通过ShaderModel实现的的图像渲染特效。想要实现HDR特效,首先,游戏开发者要在游戏开发过程中,利用开发工具(就是游戏引擎)将实际场景用HDRI记录下来,当然开发技术强的开发组会直接用小开发工具(比如3D MAX的某些特效插件)创造HDRI图像;其次,我们的显卡必须支持显示HDR特效,nVIDIA的显卡必须是GeForce 6系列或更高,ATI显卡至少是Radeon 9550或以上。HDR特效最早是在nVIDIA的显卡实现的,但是ATI的SMARTSHADER技术也包含HDR技术,不过这种HDR从实现原理上与nVIDIA的还是有区别的,只不过这种区别对于玩家来讲没有什么意义。

    HDR是nVIDIA提出的概念,早先开发商都是通过Shader Model 3.0来实现HDR特效,因此只有nVIDIA的GF 6XXX和GF 7XXX系列能够实现HDR。有人说ATI的显卡也可以实现HDR,ATI自己也是这么宣称的,其实ATI面对竞争压力,也效仿nVIDIA实现了RADEON显卡的模拟HDR的支持,注意,仅是模拟,而且是通过Shader Model 2.0实现的。

    实际上,HDR分为三个种类,即FP16 HDR、FP24 HDR和FP32 HDR,《孤岛惊魂》v1.31版支持的HDR是FP16 HDR,FP16 HDR是一种特殊硬件加速的HDR,这种HDR还没有被当前(至少2005年9月之前)的ATI的显卡所支持。模拟HDR不需要特殊硬件加速方法实现,《半条命2:失落的海岸》实现的HDR就是模拟的HDR,毕竟Valve要照顾ATI的显卡,不过还有一种说法是,《半条命2:失落的海岸》一直在拖延发布日期,是因为ATI要求Valve必须等待R520显卡上市之后才可以发布《半条命2:失落的海岸》,因为R520可能会真正支持FP16 HDR,所以有可能《半条命2:失落的海岸》也支持FP16 HDR。

    HDR和bloom效果的区别和关系

    现在很多玩家在争论HDR和bloom效果的区别。其实,从游戏表现出的画面效果来看,两者的差别不是很大,但是他们的技术成分就相差千里。今年年初,有国外玩家制作了一个《半条命2》的MOD,能够模拟出HDR效果,注意,这仅是模拟,这个MOD实现的特效与bloom效果差别不大,几乎可以说就是bloom效果。那么HDR与bloom效果的差别到底在什么地方呢?

    第一,HDR效果就是超亮的光照与超暗的黑暗的某种结合,这个效果是光照产生的,强度、颜色等方面是游戏程序可动态控制的;bloom效果则是物体本身发出的光照,仅仅是将光照范围调高到过饱和,是游戏程序无法动态控制的。

    第二,bloom效果无需HDR就可以实现,但是bloom效果是很受限的,它只支持8位RGBA,而HDR最高支持到32位RGBA。

    第三,bloom效果的实现很简单,比如《半条命2》的MOD就是一个很小的很简单的MOD,而且bloom效果不受显卡的规格的限制,你甚至可以在TNT显卡上实现bloom效果(当然效果很差)!而HDR,必须是6XXX以上的显卡才能够实现,这里的HDR是指nVIDIA的HDR。这时有必要谈nVIDIA和ATI的显卡所实现的HDR,两者还是有区别的,具体区别就很专业了,总之从真实性表现来看,nVIDIA的显卡实现的HDR更好一些。HDR是nVIDIA提出的概念,从技术上来讲,ATI当然无法严格克隆nVIDIA的技术,所以ATI的HDR是另一种途径实现的尽可能接近的HDR,不能算“真”HDR,据传ATI的R520能够真正实现FP16 HDR。

    事实上,游戏开发商往往会将两种特效一起使用以达到一个最终的效果。两者的区别可以举一个最简单的例子:你在游戏中,从黑暗的房间中走到太阳地中,你眼前的景物会很刺眼,随后亮度会降低,完全就同现实中的情况一致。很神奇!这就是HDR特效的威力。而bloom效果实现的光照强度可能不会很真实,同时也是不可变的。




    下面的四张图都是Bloom特效的演示,前面的两张是《毁灭战士3》通过MOD开启Bloom特效与不开启的对比,后面的两张是《半条命2》使用MOD开启Bloom特效的效果图。




HDR和AF(各向异性过滤)以及AA的关系

    在开启了HDR(这里是指真HDR,不是模拟HDR)之后可以开启AF,但是不能开启AA,由于《半条命2》MOD的HDR是假的,所以这三项你都可以开启。

HDR存在的意义以及与游戏的关系

    现在HDR已经成为玩家评价一款游戏是否优秀的标准之一,那么追求HDR到底有什么意义呢?其实很简单。从游戏的发展史以及未来的发展状况来看,随着科学技术的发展,游戏越来越趋向于真实化,玩家不但要求游戏中的每一种物体都有真实的外观,真实的物理特性,同时还要有真实的光照和阴影效果。其实HDR仅仅是游戏在走向真实化的道路中的一小步。游戏性的表现之一就是尽可能真实的画面,所以说游戏的操作和画面是同等重要的,放弃哪一个都是不可取的。下面的内容我曾经在太平洋游戏网发表过,总之大家看到了下面的内容不要认为我在剽窃太平洋游戏网的文章。转载请注明转载自GameSpot中文站。

    世界上最早实现HDR效果的游戏是《孤岛惊魂》v1.3版,但是很遗憾这是通过安装补丁实现的,而且效果不是很令人满意,当然作为游戏界的一个里程碑,这足够好了。

    HDR已经成为虚幻引擎3的标准特效,也就是说,未来凡是使用虚幻引擎3的游戏都能表现HDR特效。



帝国时代3

    既然本文是由《帝国时代3》引起的,那么先谈谈《帝国时代3》。《帝国时代3》的游戏引擎完全支持DirectX 9.0和Shader 3.0,如果你的显卡是一块高端的显卡,那么你通过试玩版就可以看出,游戏的世界很明亮,阳光充足,景物自然,光线柔和,景深很明显。从自身遮蔽阴影到高动态范围照明再到符合菲涅耳反射率的水面反射,《帝国时代3》在即时战略游戏中至少画面已经达到了空前的水平。开启《帝国时代3》的HDR特效的方法很简单,首先你要有GF 6系列或者7系列的显卡,之后在游戏设置的画面设置中的“Shader Quality”的下拉菜单中选择“Very High”即可。目前ATI的所有显卡和NVIDIA的中低端的显卡都无法找到“Very High”,也证明了HDR只能在GF 6系列和7系列中存在。
左边是开启HDR
右边关闭HDR
结语:

    游戏的开发始终紧随电脑科技的发展,HDR特效不过是电脑游戏众多画面特效中的简单一种,将来电脑游戏会发展成什么样子,现在不好下结论,但是有一点可以肯定,那就是画面和物理效果都将越来越真实。本文先介绍了HDR的相关知识,接着介绍了HDR与Bloom效果的区别,最后是《帝国时代3》、《孤岛惊魂》、《手足兄弟连:进军30高地》和《细胞分裂:混沌法则》的HDR开启方法。由于《毁灭战士3》和《半条命2》的所谓HDR特效都是伪HDR,实际为Bloom特效,而且需要通过第三方的MOD支持,比如pssControl2和HL2 R8 HDR Bloom Mini-mod,再考虑到游戏相对较为陈旧,所以本文不再介绍开启方法。大家可以等待9月26日的《胜利之日:起源》和不知何时发布的《半条命2:失落的海岸》地图,Valve的Source引擎表现出来的HDR效果一定不会让电脑游戏玩家们失望!
作者: yellowbigbird    时间: 2007-2-20 23:21

super mario up
作者: hourousha    时间: 2007-2-20 23:24

文章错误较多,鉴定完毕~
作者: 莎木迷    时间: 2007-2-20 23:26

简单点来说就是高光
作者: yellowbigbird    时间: 2007-2-20 23:27

引用:
原帖由 莎木迷 于 2007-2-20 23:26 发表
简单点来说就是高光
你回帖不看帖
不及格
作者: solopain    时间: 2007-2-20 23:29

引用:
原帖由 hourousha 于 2007-2-20 23:24 发表
文章错误较多,鉴定完毕~
我2007-2-20 23:19  发的帖子,您2007-2-20 23:24 回复的,请教速读方法,谢谢
作者: hourousha    时间: 2007-2-20 23:34

不告诉你~
作者: solopain    时间: 2007-2-20 23:35

宫廷秘方?
作者: 孤高的弑神者    时间: 2007-2-20 23:35

好不容易'看完了....
科教帖....
作者: BD    时间: 2007-2-20 23:35

引用:
原帖由 莎木迷 于 2007-2-20 23:26 发表
简单点来说就是高光
卖你的东西吧,没事装什么大拿啊?
作者: hourousha    时间: 2007-2-20 23:38

引用:
原帖由 solopain 于 2007-2-20 23:35 发表
宫廷秘方?
非也,因为这篇文章的部分章节有看过的印象。
作者: 灌水马甲    时间: 2007-2-20 23:46

引用:
原帖由 hourousha 于 2007-2-20 23:38 发表

非也,因为这篇文章的部分章节有看过的印象。
对象你这样的专业人士来说, 这种科普文章就是以前没看过, 几分钟看完也很正常吧.
作者: hourousha    时间: 2007-2-20 23:52

引用:
原帖由 灌水马甲 于 2007-2-20 23:46 发表


对象你这样的专业人士来说, 这种科普文章就是以前没看过, 几分钟看完也很正常吧.
由于nvidia的大力宣传加上国内媒体的努力‘理解’,这种HDR帖子如同浇了大粪的庄稼一样,一时间茁壮成长起来。当然也就导致了很多东西都是大同小异,错误自然也是大同小异,所以看这种帖子,我一般是瞟着看,很快的,不巧是这篇文章被我一瞟就发现了几处错误……呵呵
作者: 火彩    时间: 2007-2-20 23:53

小球,又见小球DEMO :D
作者: planar    时间: 2007-2-21 00:07

HDR技术是个突破.创造真实场景必须依靠他.

HDR是nVIDIA提出的概念?因该是游戏中的HDR是N提出的吧.至少CG软件中HDR技术出现的比游戏早了几年.
作者: MK2    时间: 2007-2-21 00:09

G80硬件实现了HDR和AA,然而这需要软件层次的给予支持,对于DirectX 10解决方案来说,什么问题都不会有,128bit(FP32)HDR、16xQ CSAA、16x AF可以完美融合。
  可惜的是DirectX 10发布遥遥无期,连Vista最终也不得不放弃对它的集成,一段时间内人们还是得继续生活在DirectX 9,这样FP32的HDR无从谈起,需要Frame Buffer架构支持的HDR+AA也无法简单实现,NVIDIA唯有从驱动入手,在硬件的Orthogonalized Frame Buffer基础上由驱动软件来实现HDR+AA,要获得较好的效果就相当于要部分地编写DirectX 10,工作量无异是很大的,因此,尽管NVIDIA拥有强大的驱动开发能力,然而在可见的一段时间内,人们事实上还是无法享受到HDR+AA。
作者: loverpig    时间: 2007-2-21 02:07

Vista没有DirectX 10?

M$的网站上不是说有么(我自己没装Vista……)?

http://www.microsoft.com/windows/products/windowsvista/features/details/directx.mspx
作者: xiejia31    时间: 2007-2-21 02:22

HDR就是环境光照!
意义不是太大!有HDR不还的要GI,贴图不都的要3000X3000!现在的PC根本跑不动!
MAX MAYA XSI很早就有HDR了不过都需要全局光照计算!否则HDR根本发挥不了作用!

个人认为游戏中的HDR只是做了色彩匹配,使的贴图更有层次感!而非HDR光照
作者: dreamsword    时间: 2007-2-21 02:22

VISTA使用中....确实是DX10...
作者: zhangyunsony    时间: 2007-2-21 02:56

看着有点悬乎
作者: planar    时间: 2007-2-21 03:11

没有HDR包含的色彩和亮度信息单纯GI也没有用```HDR包含的光照信息上这个图像格式革命性的地方.
只在软件中使用过HDR,最深切的感受就是让创造真实场景变的容易起来.我想游戏中也是如此..


软件出来的HDR效果```HDR+GI+AA```

2002年软件中实现的功能,06年看到GOW用对HDR的应用```震撼!!!

[ 本帖最后由 planar 于 2007-2-21 03:15 编辑 ]
作者: 倍舒爽    时间: 2007-2-21 07:36

楼上,hdr简单地说就是过爆,真实地反应过爆的效果,这样说还行吧?
作者: MK2    时间: 2007-2-21 09:40

HDR 是英文 High-Dynamic Range 的缩写,中文译名为高动态光照渲染。HDR可以令3D 画面更像真,就像人的眼睛在游戏现场中的视线效果,大幅提升游戏的真实感。

        HDR并不是想许多玩家理解的那样就是简单的“高亮”,不是让画面有更大的亮度或是对比度,大家都知道,当人从黑暗的地方走到阳光下时,我们的眼睛会不由自主的迷起来,那是因为在黑暗的地方,人为了更好的分辨物体,瞳孔张开很大,以便吸收光线;而突然到了光亮处瞳孔来不及收缩,视网膜上的视神经无法承受如此多的光线,人自然会迷上眼睛阻止大量光线冲击视神经。我们的眼睛非常敏感,而PC就不具备这种功能。所以,HDR的最终效果因该是亮处的效果是鲜亮的,而黑暗处你也可以清晰的分辨物体的轮廓,位置和深度,而不是以前的一团黑。动态、趋近真实的物理环境是HDR的特效表现原则。

简单来说,HDR是要模拟人眼自动适应光线变化的能力,而不是照相机。人眼的感光范围是非常有限的,如果一个场景的高低光线强度差超出了人眼能够同时识别的范围,人眼就不得不调节感光范围,感光范围以外的物体就会出现“过暴”或者“暴光不足”的情况。HDR就是要模拟人眼的感光范围,以营造对于人类来说接近“真实”的感觉。
作者: 火彩    时间: 2007-2-21 09:52

引用:
原帖由 dreamsword 于 2007-2-21 02:22 发表
VISTA使用中....确实是DX10...
我还以为Vista用的是专用版的DX9呢,安装游戏的时候提示我要更新DX。
作者: dboy99    时间: 2007-2-21 12:32

电脑图像的精度和宽容度是一个矛盾,以前的做法是牺牲宽容度以换取精度,现在则是通过使用HDR来解决。
HDR其实是在fix bug
作者: solopain    时间: 2007-2-21 17:23

hdr原来是bug,还是fix bug
人家说tg业内多,果然是真的:D :D
作者: solopain    时间: 2007-2-21 17:25

vista怎么可能没有dx10????
作者: dboy99    时间: 2007-2-21 18:58

引用:
原帖由 solopain 于 2007-2-21 17:23 发表
hdr原来是bug,还是fix bug
人家说tg业内多,果然是真的:D :D

fix bug是解决bug的意思

大家已经很了解你的智商了,还需要这样到处炫耀么~~
作者: ylgtx    时间: 2007-2-22 01:20

hdr就是该亮的亮,该暗的暗
作者: tdkgtm360    时间: 2007-2-22 10:33

引用:
原帖由 solopain 于 2007-2-21 17:23 发表
hdr原来是bug,还是fix bug
人家说tg业内多,果然是真的:D :D
tg业内多,小白只有无忧的烦恼一个
作者: 很有趣的小朋友    时间: 2007-2-28 17:12

不管是bloom还是真hdr,感觉都不好,真实?刺眼?
作者: BD    时间: 2007-2-28 17:14

引用:
原帖由 很有趣的小朋友 于 2007-2-28 17:12 发表
不管是bloom还是真hdr,感觉都不好,真实?刺眼?
HDR是被美国一个医学协会誉为视力杀手




欢迎光临 TGFC Lifestyle (http://club.tgfcer.com/) Powered by Discuz! 6.0.0