研发实战:用RenderDoc验证有效渲染方式,优化Quest应用
副问题[/!--empirenews.page--]
来历:映维网 Oculus开拓者相关团队的一个首要使命是辅佐开拓者优化游戏,令其可以或许有用地支持全部的Oculus硬件。所述团队中的开拓者相关工程师克里斯蒂亚诺·费雷拉(Cristiano Ferreira)正在通过系列博文来先容怎样通过RenderDoc来优化你的Quest应用,包罗怎样轻松将其集成至你的事变流程,相干的基本常识,以及应承你在将来操作这项有效器材的能力履历。对付第三篇博文,费雷拉试探了怎样使以最有用的方法举办渲染,包罗验证CPU和GPU渲染要领是否可以或许尽也许高效完成的关要害行使景象,下面是映维网的详细清算: 1. 验证多通道 vs 实例立体渲染(instanced stereo rendering) 因为VR渲染的性子,确保绘制挪用的最优化很是重要。在幕后,引擎别离渲染两只眼睛。每只眼睛都有本身的模子视图投影矩阵,尔后者由透镜配置限制的IAD(轴间间隔)所界说。大大都人都知道IPD(瞳孔间间隔)配置会影响轴间间隔,商用引擎凡是会为你处理赏罚这个题目,但你必要确保配置正确。下面是详细的概述: 1.1 单通道 对付基本通道中的每个网格 绘制左眼(一次绘制挪用) 绘制右眼(一次绘制挪用) 1.2 多通道 对付基本通道中的每个网格 绘制左眼(一次绘制挪用) 对付基本通道中的每个网格(再一次) 绘制右眼(一次绘制挪用) 1.3 实例立体渲染/多视图 对付基本通道中的每个网格 绘制双眼(一次绘制挪用) 如你所见,实例立体渲染/多视图是最佳选择,由于它将使根基通道中的总绘制挪用次数镌汰一半。 2. 验证没有行使姑且缓冲区 搜查输出/渲染纹理,以确保资源名称标志为RTTextureArray而非TempBuffer,ColorBuffer或其他名称。要应用MSAA和/或节省牢靠凝望点渲染量,你必需直接写入互换链纹理。这同时将确保你不会心外地理会中间渲染方针/姑且缓冲区,从而节减1ms-1.5ms的牢靠GPU理会本钱。 互换链纹理的正确名称如下表现: 这是写入正确互换链纹理时的输出纹理名称。在这个示例中,你会看到选定的绘制挪用位于名为“Final Blit Pass”的注释之下。这意味着你要行使先前世成的渲染方针并将其用作姑且缓冲区,然后再把它复制到互换链纹理。GPU必要支付昂贵的理会本钱,而仅将其映射到互换链纹理又要支付每像素本钱。 我在前面表现的统一捕捉帧中高亮了基本通道绘制挪用。响应输出渲染方针表现的标签为“_CameraColorTexture”。这意味着引擎天生了一此中间渲染纹理并在后头用作blit/copy的输入资源,这意味着理会本钱,没有牢靠凝望点渲染像素着色器节减量和MSAA质量晋升。这里声名的是,你必要始终存眷渲染方针,确保仅在单通道中直接渲染到互换链纹理。 在上面的屏幕截图中,你可以看到Unity中的调试标志通过Resolve Shadows标志显式注释了理会阴影贴图的进程。你同时可以看到Final Blit Pass讲明,意味着将姑且颜色缓冲区复制到互换链纹理。 3. 验证阴影投射器/吸取器/级联级别和阴影贴图判别率(如若行使) (编辑:河北网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |