Je souhaite dessiner un carré simple avec la taille de l'écran plein avec la méthode glDrawArray dans cocos2d. Lorsque la rétine est désactivée, tout se passe comme prévu, mais lorsqu'elle est activée, tout est moitié moins grand. (Il semble que le système de coordonnées de glDrawArray ne soit pas en points mais en pixels)Problèmes glDrawArrays sur l'affichage Retina
D'autres fonctions de dessin fonctionnent comme prévu mais comme je dessine des formes compliquées, nous devons utiliser glDrawArray car il est beaucoup plus rapide.
Des idées pour résoudre ce problème?
-(void) draw
{
CGPoint box[4];
CGPoint boxTex[4];
CGSize winSize = [[CCDirector sharedDirector] winSize];
//float boxSize = winSize.width;
box[0] = ccp(0,winSize.height); // top left
box[1] = ccp(0,0); // bottom left
box[2] = ccp(winSize.width,winSize.height);
box[3] = ccp(winSize.width,0);
boxTex[0] = ccp(0,1);
boxTex[1] = ccp(0,0);
boxTex[2] = ccp(1,1);
boxTex[3] = ccp(1,0);
// texture backround
glBindTexture(GL_TEXTURE_2D, self.sprite.texture.name);
glVertexPointer(2, GL_FLOAT, 0, box);
glTexCoordPointer(2, GL_FLOAT, 0, boxTex);
glDrawArrays(GL_TRIANGLE_STRIP, 0, 4);
}