[iPad-3]-[iOS 5.0]-[Objective-C]-[XCode 4.3.3]-[Cocos2D]-[openGL|ES 2.0]
我正在学习如何使用 openGL|ES 2.0 并偶然发现了帧缓冲区对象 (FBO)
信息: 我正在使用 Cocos2D,它有很多额外的绘图处理。我想这可能与这个问题有关。如果 cocos 的“默认”帧缓冲区与绘制到屏幕的实际默认帧缓冲区不同,这可能会导致错误绘制
我的问题: 在我的“helloworld.m”类的初始化函数中,如果我放置“glBindFrameBuffer(GL_FRAMEBUFFER, 0);” 在任何地方,我都会得到一个空白屏幕!
-(id) init
{
if( (self=[super init]))
{
CGSize winSize = [CCDirector sharedDirector].winSize;
glBindFramebuffer(GL_FRAMEBUFFER, 0);
CCSprite * spriteBG = [[CCSprite alloc] initWithFile:@"cocos_retina.png"];
spriteBG.position = ccp(512,384);
//[self addChild:spriteBG z:1];
[self scheduleUpdate];
_mTouchDown = NO;
_mSprite = [CCSprite spriteWithTexture:_mMainTexture];
_mSprite.position = ccp(512,384);
[self addChild:_mSprite];
self.isTouchEnabled = YES;
} return self;}
我错过了一些基本而明显的东西吗?
据我所知,函数“glBindFramebuffer(GL_FRAMEBUFFER, 0);” 只需将 Framebuffer 设置为 0 即可应用绘制到屏幕的默认帧缓冲区。