3
\$\begingroup\$

I have recently starting upgrading my ios game to the latest Cocos2D (2.0 rc), and I am having some difficulties upgrading my texture generation code to OpenGL 2.0.

In the old version I generated images with this code:

CCRenderTexture *rt = 
[CCRenderTexture renderTextureWithWidth:WIDTH height:HEIGHT];

[rt beginWithClear:bgColor.r g:bgColor.g b:bgColor.b a:bgColor.a];

glDisable(GL_TEXTURE_2D);
glDisableClientState(GL_TEXTURE_COORD_ARRAY);

glVertexPointer(2, GL_FLOAT, 0, verts);
glColorPointer(4, GL_FLOAT, 0, colors);
glDrawArrays(GL_TRIANGLE_STRIP, 0, (GLsizei)nVerts);

glEnableClientState(GL_TEXTURE_COORD_ARRAY);
glEnable(GL_TEXTURE_2D);

[rt end];

But since OpenGL 2.0 works differently this code won't work. What is the best way to use the new OpenGL?

\$\endgroup\$
0
\$\begingroup\$

You say you are working on texture generation code and the function is called renderTextureWithWidth, but the arguments are never used and it looks to me like you're rendering a mesh without a texture.

Very odd.

What you want to do is convert your code to use Vertex Buffer Objects (VBO's). You can find a good tutorial on them here.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.