TressFX

来自古墓丽影中文站

TressFX 头发模拟在《古墓丽影(2013)》中首次得到运用,一时间,玩家戏称其为“海飞丝”。

报道

  • 古墓丽影新作:PC版 秀发更出众!
  • 2013年02月27日

继上周发布了古墓丽影新作的PC平台增强特性之后,一项新特效的详情日前被正式公布——AMD显卡的“TressFX Hair”技术让劳拉“秀发更出众”。需要特别指出的是,这项特效并不是AMD显卡独占,它能够在所有支持 DirectX11 的显卡上实现,因此广大 nVIDIA 用户大可安心。

在 AMD 先行放出部分游戏截图和特效说明后,古墓丽影官方博客也释出了相应的消息,并提供了更多的截图。照旧,我们将这些未添加水印的截图放置于网盘供大家查阅和下载,请留意其中有些是非特效的截图(文件名中带“Original”)是与特效图(文件名中带“TressFX”)进行对比之用。

头发的处理一直就是PC游戏制作中最具挑战性的难题之一,要表现出极具现实感的自然秀发,就需要将成千上万根发丝都进行抗锯齿处理并让其投射出独立的复杂阴影。考虑到游戏中角色的不停移动,头发的状态也需要不断地刷新。

无论是 GPU 厂商还是游戏制作方都在为实现更真实的头发效果而不懈努力,AMD 与晶体动力的密切合作,令 AMD 的最新成果“TressFX Hair”得以应用于古墓丽影新作,这也是第一款运用这项新技术的游戏。

TressFX Hair 使用了 DirectCompute 编程语言,结合 AMD GCN 架构的强大并行计算能力,可以理解成将头发渲染的工作部分转到了后期处理中。AMD 还利用了此前的顺序无关透明(OIT)技术,使用“Per-pixel Linked List”(每像素链接清单/PPLL)数据结构来管理渲染的复杂性和显存使用。TressFX Hair 就这样构建了一套实时物理模拟系统,将每一根头发作为几十条链接中的一环,让重力、风雨、头部运动等因素以更真实的方式描绘头发。还有碰撞检测机制,确保发丝不会彼此穿越,或者跑到头皮、衣服、身体等其它实体表面之下。此外,头发在受到外力影响而发生变化之后,会逐渐回到最初状态。

那么,你能够见识到劳拉那一头更为出众的秀发吗?如果是 AMD Radeon HD 7000 系列的用户,那就等着看吧!下面是一些对比图,请耐心等待3月5日游戏的正式发售!

技术说明

“发质”差的年代

从3D时代刚显山露水时起,游戏中角色们的头发总是很糟糕:僵硬而粗糙,无法随着角色而摆动。很多游戏通过使用短发,高束发甚至是头盔来掩盖问题。但是为何如此?很简单,因为真实的头发是一种十分复杂的材质,实时渲染难度太大。想要创造出一头自然的秀发,你要绘出数以万计独立又半透明的细小发丝,而每一根又会产生复杂的投影,并且需要进行抗锯齿处理。更具挑战的是,为了与主角的动作同步,这些计算要在一秒之内更新几十次。

AMD的“TressFX Hair”技术让劳拉“秀发更出众”,但这项特效并不是AMD显卡独占,它能够在所有支持 DirectX11 的显卡上实现。
AMD的“TressFX Hair”技术让劳拉“秀发更出众”,但这项特效并不是AMD显卡独占,它能够在所有支持 DirectX11 的显卡上实现。

真实化技术的前沿

劳拉是一个标志性人物,拥有一条同等标志性的马尾辫。而现在2013年发行的《古墓丽影》不仅仅有一个与时俱进的劳拉,还拥有一份从本质上解决棘手头发渲染问题的前沿方案。AMD与晶体动力程序开发员们通过辛劳的合作,现在《古墓丽影》骄傲地宣布成为世界上第一个使用实时头发渲染技术的发售游戏:

古墓丽影9海飞丝

TressFX 头发模拟之道

TressFX 头发模拟通过DirectCompute编程语言打开了GCN(Graphics Core Next)构架的大规模并行处理能力,为劳拉的那头秀发带来了革命,将预渲染的高画质带入了实时渲染。此方案基于AMD先前研发的“无序透明”(Order Independent Transparency,OIT)技术,通过“每像素链表”(Per-Pixel Linked-List,PPLL)数据结构来控制渲染复杂度与内存用量。

古墓丽影9海飞丝

此外还使用了DirectCompute来为TressFX 头发进行实时物理模拟。该物理系统将每一缕头发当作串联起诸多联动的链条,能够对诸如重力,风,以及头部移动产生的外力,使头发发生移动卷曲等真实反应。另外,“撞击检测”的存在保证每缕头发不会相互穿过,或者穿过诸如布料、劳拉的头和身体等固体表面。最后,发型的模拟,是在外力促使头发移动之后渐渐复原形而实现的。支持GCN构架的显卡,诸如AMD Radeon™ HD 7000 系列,通过显卡集成高速共享显存以及每秒万亿次的大规模处理能力,使自己具备了专门应对这种处理任务的能力。

大风环境 WINDY ENVIRONMENTS

从峡谷吹来的恶风使劳拉的马尾辫来回挥打。通过TressFX 头发模拟技术,千万根独立的头发中,每一根都能随着风速而不断变化。

古墓丽影9海飞丝

雨天环境 RAINY ENVIRONMENTS

劳拉在狂风暴雨中搁浅于海滩上,通过TressFX 头发模拟技术劳拉的头发沉重而杂乱地垂荡了下来;实时的物理计算同时计算了湿度和风速。

古墓丽影9海飞丝

干燥环境 DRY ENVIRONMENTS

阅读一张古老地图上的遗迹,TressFX 头发模拟技术让劳拉的头部实时摆动通过千万根头发中得以实时展现。

古墓丽影9海飞丝

强开的尴尬

如果配置不给力强开“海飞丝”的话,有时候劳拉索性就不要头发了……(@重生3号