原文地址http://blog.csdn.net/bill_man
上一篇介绍了QUAD_COMMAND渲染命令,顺带介绍了VAO和VBO,这一篇介绍批处理渲染命令BatchCommand,批处理命令的处理在Render中比较简单
- elseif(commandType==RenderCommand::Type::BATCH_COMMAND)
- {
- //将之前缓存的绘制
- flush();
- autocmd=static_cast<BatchCommand*>(command);
- //调用命令
- cmd->execute()
- }
首先调用flush将之前缓存的VBO绘制出来,然后调用命令自己的执行函数,这个过程和CUSTOM_COMMAND是一样的,不同的是这里的execute调用的是BatchCommand确定的绘制函数,CUSTOM_COMMAND调用是传入的func函数,这里看一下BatchCommand的execute函数。