OW渲染

Posted by Jqy on May 4, 2021

Overwatch 渲染流程

画面:

总体渲染采用了经典的Defer Rendering,采用4个GBuffer,分别为

G1:Albedo

G2(暂时未知,看着应该像Smooth或者Metallic)

G3:Normal(而且看起来像是WorldSpaceNormal)

G4:未知

渲染物体也是先采用了PreZ pass,渲染出Depth后对后续的渲染物做Culling来优化性能

image-20210504211919982 着色部分采用了经典的PBR,全局光照部分采用球谐光模拟,根据DXBC的代码推测应该也是用的通常的3阶9项的球谐函数来做拟合。

着色后输出(未进行ToneMap)

主题着色完成以后又进行了一系列的DrawCall,推测应该是半透明物件的渲染。

反射效果:屏幕空间反射,依靠DepthMap和NormalMap来构建

天空:CubeMap

ToneMap:

总体看下来还是比较常规的,用到的黑科技感觉不是很多(虽然只看了一点点),Shader之类的看着有点累,随心情看。

不过也有可能是画质开的比较低的原因,感觉很多该有的Post效果都没有看见(比如各种AO)2333