rt越多,更多的tile需要更多的gmem操作,影响性能。同样,越大的surface表示更多的tile、更多的gmem操作。
如果不得不用rt,那么,要做性能和画质之间权衡。
Snapdragon里,trace里,点击surface能看到大小和color、depth、stencil的精度,查找哪些可以降采样。考虑是否改变精度或大小。
下面是depth24_stencil8:
默认类型是UINT32,DEPTH24存储在32比特的容易里,不太有效。所以,可以优化。改成16bit。
可以看到,stencil消失了,渲染时间缩短了。bin数量少了。rt更小,像素比特更少,需要的bin更少。
参考:https://developer.qualcomm.com/software/snapdragon-profiler/app-notes/remove-unused-render-targets