“大家好,欢迎来到失落海岸。在这个旅程里,我将向各位介绍我们正在研发的高动态光照技术,简称HDR;我们还将了解到失落海岸特辑背后的一些内幕”。
说这番话的是Valve的创始人、总负责人、业界领袖:Gabe Newell。受他的盛情之邀,Bit-Tech的编辑飞往西雅图,去和他谈谈HDR和即将发布的《胜利之日:Source》。
Valve开发“失落海岸(HL2:Lost Coast)”的目的是为了回答这些疑问:假如开发工作不受束缚会怎样?假如我们不必考虑中端用户的硬件配置,那么我们能达到何种高度?
在HL2最终发布之后,Valve的开发人员开始考虑将超高解析度的纹理、模型和HDR加进Source引擎会有何种效果,他们最终决定做一个进行技术验证的实例。这样,失落海岸诞生了。
何谓HDR?
HDR被认为是自反锯齿技术出现后的又一个巨大进步,南加州大学的Paul Debevec被尊为HDR之父,他解释道:“一幅场景的动态范围是指最亮处和最暗处的对比度比值。比如在户外阴天的环境下,一盘受到均匀光照的土豆泥被视为低动态范围,而站在阴森华丽的大教堂内部,看到一束光从它积满灰的玻璃窗外投射进来,这就是高动态范围的光照环境。事实上,任何可以直接见到光源的场景均被视为高动态范围(环境)。
当前的有源矩阵(TFT)液晶显示器大都具备400:1的对比度,某些高端型号具备1000:1的对比度,这意味着在最亮处的亮度值和最暗处亮度值的比例最大能达到1000比1,这听上去好像已经很大了;但在真实的环境中,人眼所能感知的动态范围达到了100000比1,或者更大。
下面用图片来说明光照的动态范围
这连续三张图片显示了用数字相机在反差强烈的光照环境下的尴尬:最左边的太阳已经有点过曝了,而云彩的其余部分还处于欠曝的范畴里;如果你想看到更多细节,随着曝光值的增大,太阳的过曝程度越来越厉害直至整张照片都饱和掉。
这是个游戏中的真实场景,受制于标准动态范围,无论怎样调节曝光强度,大家都无法看到室内室外的所有细节,不是漆黑一团就是惨白一片。
这对于力求再现真实世界的开发者来说是很苦恼的,他们一直被标准动态范围所束缚。如果将HDR加入Source引擎,Valve就能拥有更大的自由度去塑造真实的世界和真实的光照,同时又能克服现有显示设备的天生缺陷。
Source引擎除了加入HDR之外还有哪些改进呢?Gabe不置可否。他只是确定将来Valve所有的游戏都将运用HDR,而第一款运用HDR的游戏——不是失落海岸,而是《胜利之日》的Source版。失落海岸的发布日期还不确定,据推测大概会紧跟在《胜利之日》之后。半条命的资料片《HL2:Aftermath》也将运用HDR,Valve希望能在圣诞节到来前发售,大概会在11月份。
鉴于HDR已经成了业界的流行趋势,一些滥竽充数之辈自然破土而出。比如《Far Cry》的HDR版本,在这款游戏里,只有一个与HDR的有关的技术得到了运用:Blooming。它用光源勾画物体边缘,看上去一片光灿灿的朦胧。Valve列出了一些它认为比较重要的HDR技术:HDR天空体、HDR立方体映射、HDR光反射和折射、当然还有Blooming等等。
从2003年起,Valve的编程小组开始探索HDR课题,他们通过至少4个不同的途径来分别求解这个谜题,最后达到的效果就是:在使用HDR的同时还能打开多倍取样反锯齿(MSAA)功能,而且能在所有硬件支持DirectX9的显卡上实现,包括那些仅支持SM2.0的显卡——即使是Radeon9600也有还说得过去的测试成绩。
以下是一段15分钟的游戏画面展示:
大致故事情节是:主角到达海岸的大门,受到老渔民的问候,他请你去杀掉几个登陆此地的“Combine”。于是主角穿过海岸,走过一段充斥异国情调的旅程,杀死“Combine”再折返回来……
以下是从室外转入室内,注意外界射入的强光并没有淹没墙壁的细节;在最后一张截图中,主角站在污损的玻璃朝外看,外界景物经过玻璃窗发生实时的扭曲和变形。这些场景以前在某些显卡的演示DEMO里出现过,现在我们终于能实际玩到它了。
目前已知HL2的合法用户可以免费下载《HL2:Lost coast》,但玩家应该把它视为一个技术演示的游戏DEMO,而非一个完整版的游戏(HL2:Aftermath才算是真正完整的游戏)。尽管把它从头玩到尾不到一个小时,但游戏里的评论功能非常有意思,玩家可以在玩第二遍的时候打开这个功能,听听游戏的艺术总监和策划主管评论屏幕上出现的场景——就像DVD的评论音轨那样。如果玩家喜欢这个设计,Valve会考虑在以后的游戏里也加入这个功能。
此外,可能有玩家会担心因为想玩《HL2:Lost coast》而被迫升级自己的硬件,但如果你玩HL2的速度还不错的话,那么玩失落海岸也应该没什么问题,增加了HDR特效的Source引擎只会有10-30%的性能损失。如果玩家对此还有疑问的话,请参考此文中的屏幕截图,运行平台是一台1.6GHZ的Intel迅驰笔记本,1GB内存,128MB的ATI FireGL显卡,图像细节设为“高”,运行在1024X768 2AA的环境中,平均桢数有10FPS——但是,这只是台笔记本,而且FireGL并不适合用来玩游戏。