Two. Here is my final code for submission:
// Stop flicker
CC_ENABLE_DEFAULT_GL_STATES();
CCSprite *sprite;
CGSize size = [[CCDirector sharedDirector] winSize];
switch ([[CCDirector sharedDirector] deviceOrientation]) {
case CCDeviceOrientationLandscapeLeft:
sprite = [CCSprite spriteWithFile:@"Default-Landscape.png"];
sprite.anchorPoint = CGPointZero;
glTranslatef(0.0f, size.width, 0.0f);
glRotatef(-90.0f, 0.0f, 0.0f, 1.0f);
[sprite draw];
glRotatef(90.0f, 0.0f, 0.0f, 1.0f);
glTranslatef(0.0f, -size.width, 0.0f);
break;</p>
case CCDeviceOrientationLandscapeRight:
sprite = [CCSprite spriteWithFile:@"Default-Landscape.png"];
sprite.anchorPoint = CGPointZero;
glTranslatef(size.height, 0.0f, 0.0f);
glRotatef(90.0f, 0.0f, 0.0f, 1.0f);
[sprite draw];
glRotatef(-90.0f, 0.0f, 0.0f, 1.0f);
glTranslatef(-size.height, 0.0f, 0.0f);
break;
case CCDeviceOrientationPortraitUpsideDown:
sprite = [CCSprite spriteWithFile:@"Default-Portrait.png"];
sprite.anchorPoint = CGPointZero;
glTranslatef(size.width, size.height, 0.0f);
glRotatef(180.0f, 0.0f, 0.0f, 1.0f);
[sprite draw];
glRotatef(-180.0f, 0.0f, 0.0f, 1.0f);
glTranslatef(-size.width, -size.height, 0.0f);
break;
default:
sprite = [CCSprite spriteWithFile:@"Default-Portrait.png"];
sprite.anchorPoint = CGPointZero;
[sprite draw];
break;
}
CC_DISABLE_DEFAULT_GL_STATES();
[[[CCDirector sharedDirector] openGLView] swapBuffers];
[[CCTextureCache sharedTextureCache] removeTexture:[sprite texture]];
Jeez I hate this editor lol