[gdc19]《战神4》中的全局光照技术

在这里插入图片描述
战神4作为18年的GameOfYear,可以说各种牛逼。
Sony Santa Monica 能够将游戏行业里的旗舰游戏继续推进,并且在品质,设计上都有创新,实属不易。
过程中也是比较曲折,难怪主创看到项目最后成功忍不住泪奔。
这里是全局光照技术的呈现,简单说间接光照在GIVolume+NormalizeEnvMap上终于比较成熟了(《战神4》《蜘蛛侠》都类似做法了),比lightmap有比较明显的优势了,实际应用中完全取代Lightmap比较ok了。
这里是简要的mindmap,内容不多,但是含金量不错的,对于我们接下来要提升的全局光照方面也颇有启发。
在这里插入图片描述
然后这里必须要来一个让我下巴掉地上的东东:战神地图编辑器是在maya里的,木有自己的专属编辑器。。。
在这里插入图片描述
GIVolume优劣
这个是作为indirect diffuse lighting的解决方案,之前是用的lightmap,相比lightmap, GIVolume有这些好处:

  • GIVolume作为一个3D光照信息,本身确实比2D的lightmap方方面面光照能力强很多,包括
    • 可以让静态物件,动态物件光照信息更统一(lightmap只能作用在static obj上,动态物件要别的方式来弄,常常不一致)
    • 可以给volume fog,particle这种来打间接光照
    • 可以增强IBL(image based lighting,或者我们常说的EnvMap),给IBL进一步的空间信息,提升光照属性
  • pipeline优势:和geometry解耦,lightmap是重要和mesh uv搞飞机真心烦

所以GIVolume最后成为《战神4》的选择,其实也是《蜘蛛侠》的选择,不知道是不是内部大家沟通的结果。

GIVolume的技术细节
这个就比较直接了:

  • 1m一个voxel的精度来存
  • 美术放置box,box内部就会cook GI
  • 会有漏光的情况,通过normal方向偏移搞定
  • GI里面存2band的SphericalHarmonic系数,和天空的visibility

AO和ambient shadow
战神是用了,ssao+ambient shadow+ao map来达到较好的阴影里的“阴影”效果。
在这里插入图片描述
(没有任何ao或者ambient shadow信息)
在这里插入图片描述
ssao+ao map(蓝色框里面的)+ambient shadow(红色框里的)
ambient shadow是来自last of us里的。
这里有记录:https://blog.csdn.net/toughbro/article/details/43876137
采样角色的capsule即可,不赘述。

IndirectSpecularLighting
捕获IBL就不赘述。
这里和CallOfDuty里做法一样,要做一个normalize(作者很委屈的表示这个是他寄几想出来的)。
call of duty的物理光照内容可以看这里:https://blog.csdn.net/toughbro/article/details/16927505
在战神里是要这样做:

  • 把envmap的光照信息做normalize
  • 然后用GI的亮度来做最终的indirect specular lighting
    这样的理由可以看下图的对比:
    在这里插入图片描述
    可以看到,没有GI信息的时候,IBL带来的反射,在左下有严重的漏光,这是因为indirect specular lighting缺乏空间信息,所以就要从GI中拿。
    拿的方式就是 NormalizeEnvMap*GI亮度这样去做。
    战神这里总结的很不错:GI提供空间细节,cubemap提供角度细节。
  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值