请教一下,2.x中jsb_opengl_manual.cpp中的GL_COMMAND_xxx,如何区分GL API是否需要通过flushCommand来执行

jsb_opengl_manual.cpp中大部分OpenGL2.0的Api 通过flushCommand,优化批量执行;还有一部分是不通过flushCommand的,这个区分或者判断是根据什么,谢谢

@dumganhar 大佬求指导

看是否需要这个GL API的返回值

谢谢,明白了,需要返回值的GL API,在执行完flushCommands()方法后,立即执行对应的GL方法,如:
function createBufferOpt() {
flushCommands();
var ret = _gl.createBuffer();
// console.log('GLOpt: createBuffer: ’ + ret._id);
return ret;
}
但是有个别方法没有返回值,也没有放到flushCommands()中,这个是此类方法比较特殊吗,如:

function bufferDataOpt(target, data, usage) {
flushCommands();
// console.log(‘GLOpt: bufferData’);
_gl.bufferData(target, data, usage);
}

function bufferSubDataOpt(target, offset, data) {
flushCommands();
// console.log(‘GLOpt: bufferSubData’);
_gl.bufferSubData(target, offset, data);
}
大佬,如果看到的话,辛苦指点一下,感谢啦

这里是因为不清楚 data 的大小,所以不适合放到队列中,避免队列剩余空间不够用的情况。