Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

shusseina

macrumors newbie
Original poster
Feb 23, 2009
14
0
I am going through Apple's GLSprite OpenGL ES sample app attempting to figure out how the code works.

In EAGLView.m there is method createFrameBuffer:

Code:
- (BOOL)createFramebuffer
{
	glGenFramebuffersOES(1, &viewFramebuffer);
	glGenRenderbuffersOES(1, &viewRenderbuffer);
	
	glBindFramebufferOES(GL_FRAMEBUFFER_OES, viewFramebuffer);
	glBindRenderbufferOES(GL_RENDERBUFFER_OES, viewRenderbuffer);
	[context renderbufferStorage:GL_RENDERBUFFER_OES fromDrawable:(id<EAGLDrawable>)self.layer];
	glFramebufferRenderbufferOES(GL_FRAMEBUFFER_OES, GL_COLOR_ATTACHMENT0_OES, GL_RENDERBUFFER_OES, viewRenderbuffer);
	
	glGetRenderbufferParameterivOES(GL_RENDERBUFFER_OES, GL_RENDERBUFFER_WIDTH_OES, &backingWidth);
	glGetRenderbufferParameterivOES(GL_RENDERBUFFER_OES, GL_RENDERBUFFER_HEIGHT_OES, &backingHeight);
	
	if(glCheckFramebufferStatusOES(GL_FRAMEBUFFER_OES) != GL_FRAMEBUFFER_COMPLETE_OES) {
		NSLog(@"failed to make complete framebuffer object %x", glCheckFramebufferStatusOES(GL_FRAMEBUFFER_OES));
		return NO;
	}
	
	return YES;
}

What do the procedure calls glGenFramebuffersOES and glGenRenderbuffersOES do?

I see they are in the OpenGLES framework (OpenGLES.framework/Headers/ES1/gl.h), but I can't find either in Apple's documentation under Xcode, on their Developer site or in the man pages on khronos.org, which makes it difficult figuring out how the code works.
 

johnnyjibbs

macrumors 68030
Sep 18, 2003
2,964
122
London, UK
I'm flumuxed by it too because it's Open GL code, which I have no idea where to find any decent info on. You'll have to buy a book on it I'm afraid if you want to do 3D games.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.