前段时间调整渲染系统的"渲染命令机队列"的运行结构和机制,以保证在渲染执行阶段尽可能的没有逻辑运算和判断来提升性能(主要优化cpu instruction cache),今天在测试一个比较复杂的实时组合不同类型的多重纹理的demo,结果直接报了
INVALID_OPERATION: bindTexture: textures can not be used with multiple targets
找了一下,发现在调用glBindTexture()这个函数的时候,第一个参数也就是纹理类型由于上述调整导致逻辑疏漏而出错。只要保证这个函数的第一个参数值和实际的纹理类型匹配就ok了