转换为 cocos2d V3,此代码不会产生绘图:
[_shaderProgram use]; //for V2 this was [shaderProgram_ use];
ccGLEnableVertexAttribs(kCCVertexAttribFlag_Position | kCCVertexAttribFlag_Color);
glVertexAttribPointer(kCCVertexAttrib_Position, 2, GL_FLOAT, GL_FALSE, 0, lineVertices);
glVertexAttribPointer(kCCVertexAttrib_Color, 4, GL_FLOAT, GL_FALSE, 0, colorVertices);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
glDrawArrays(GL_TRIANGLE_STRIP, 0, 6);
为什么这段代码在 V3 中不起作用?这段代码是从 CCScene 的 draw 方法中调用的。非常感谢任何帮助。
更新:通过在此代码之前调用 ccDrawPoint 找到部分解决方法(绘制一个小的随机点)。然后 glDrawArrays 绘制正确的形状(读取我的 lineVertices 数组)但忽略我的 colorVertices 数组。如何让 glDrawArrays 使用我的 colorVertices 数组?(此代码在我转换为 V3 之前有效)