Open Michael-Lfx opened 5 years ago
据红宝书最后一部分讲, secondary command buffer 主要是为了方便 CPU 并行生成指令,供 primary command buffer 提交用的,因此它的设计初衷应该是为了方便CPU端更快的生成指令,然后更快的提交,而不是给GPU优化更快执行的。所以如果不是复杂的游戏场景,而是普通的app是不需要这种设计的。
我也是关注它的CPU编码消耗,还没在我们业务场景中对比它与全部用 Primary Command Buffer
的CPU耗时差异。
secondary command buffer 举个例子哈,静态场景,绘制物体,一段时间内都不会变,这个时候用 secondary command buffer 我觉得应该会很好,省了很多操作,这应该算是 common operations 吧。这个改善程度也要看场景,我们心中能明白它省在什么环节上了,这就行了。
使用场景与性能改善
vkCmdDrawIndirect