[sig13]Lighting technology of "The Last Of Us"

最后更新于:2022-04-01 11:27:04

![这里写图片描述](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-04-28_57215544b42b3.jpg "") siggraph13上面的文章,相关技术还是用在ps3上。 《The Last Of Us》实实在在代表ps3的图像最高水平: **LightMap** ![这里写图片描述](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-04-28_57215544de376.jpg "") 使用的是light map,技术从quake1时代就一直在用,到现在依旧是很有生命力,对于静态场景静态光照的确是更优的选择。 ![这里写图片描述](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-04-28_5721554560941.jpg "") 分成ambient component和directional component两个部分:和之前valve的做法很像了,然后把相关的光照信息使用spherial harmonic系数存下来。 **directional ambient shadow** paper中给的图不是特别好,看这个吧: ![这里写图片描述](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-04-28_572155458bf62.jpg "") 不同于传统ambient occlusion这个是对于ambient lighting中有方向的部分 实际生活中ambient lighting也不是各个方向一样的,图中就是右上角照过来的ambient lighting要强一些,人在右上角方向才应该产生比较多的ambient shadow,而如果是在右下角就应该少。 传统ambient shadow会是根据物体表面normal来计算occlusion(或者说是shadow),没有考虑ambient lighting本身的方向。 这里naughty dog的做法是: ![这里写图片描述](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-04-28_57215545b5560.jpg "") - 先是根据light map中有方向的部分去渲染屏幕空间中,ambient lighting的主要的方向 - 然后使用这个方向去和人物做line check - 这个检测是在spu上做的 - 人物也是使用了胶囊体来模拟来简化计算 - 最后产生一个屏幕空间的ambient shadow **接缝处理** 也谈到了light map典型的一些问题,比如接缝处理等等。 这些在地形渲染上也会有,做一个焊接的操作
';