Prepass是可选项,通过像素的深度检测,来剔除深度值不符的像素,从而降低接下来的Bas的渲染工作量。(只计算深度)
是否需要Prepass,判断条件如下:


这里有个问题,就是如何处理静态物体和动态物体。先静态物体,后动态物体的方式。
静态物体包含不透明对象(DepthDrawList)和MASK对象(MaskedDepthDrawList),有Z缓冲区;动态物体是半透明,判断是否作为遮挡物体。
这点感觉和osg类似,先绘制不透明,再绘制半透明,引擎都应该类似吧。
Prepass是一种可选技术,通过预先进行像素深度检测来减少后续渲染步骤中对不符合深度条件的像素的处理,主要针对静态不透明和MASK对象以及动态半透明物体。静态物体先被绘制,利用Z缓冲区,动态物体则需判断是否作为遮挡物,此策略类似于osg和其他图形引擎的处理方式。
Prepass是可选项,通过像素的深度检测,来剔除深度值不符的像素,从而降低接下来的Bas的渲染工作量。(只计算深度)
是否需要Prepass,判断条件如下:


这里有个问题,就是如何处理静态物体和动态物体。先静态物体,后动态物体的方式。
静态物体包含不透明对象(DepthDrawList)和MASK对象(MaskedDepthDrawList),有Z缓冲区;动态物体是半透明,判断是否作为遮挡物体。
这点感觉和osg类似,先绘制不透明,再绘制半透明,引擎都应该类似吧。

被折叠的 条评论
为什么被折叠?
--2,PrePass预处理阶段--<1>判断是否预处理&spm=1001.2101.3001.5002&articleId=130141518&d=1&t=3&u=b6235ecca9914afabbface498eb8c294)