Graphics Reference
In-Depth Information
@end
@implementation ViewController
- ( void )setUpBuffers
{
//set up frame buffer
glGenFramebuffers ( 1 , & _framebuffer );
glBindFramebuffer ( GL_FRAMEBUFFER , _framebuffer );
//set up color render buffer
glGenRenderbuffers ( 1 , & _colorRenderbuffer );
glBindRenderbuffer ( GL_RENDERBUFFER , _colorRenderbuffer );
glFramebufferRenderbuffer ( GL_FRAMEBUFFER , GL_COLOR_ATTACHMENT0 ,
GL_RENDERBUFFER , _colorRenderbuffer );
[ self . glContext renderbufferStorage : GL_RENDERBUFFER
fromDrawable : self . glLayer ];
glGetRenderbufferParameteriv ( GL_RENDERBUFFER , GL_RENDERBUFFER_WIDTH ,
& _framebufferWidth );
glGetRenderbufferParameteriv ( GL_RENDERBUFFER , GL_RENDERBUFFER_HEIGHT ,
& _framebufferHeight );
//check success
if ( glCheckFramebufferStatus ( GL_FRAMEBUFFER ) != GL_FRAMEBUFFER_COMPLETE )
{
NSLog ( @"Failed to make complete framebuffer object: %i" ,
glCheckFramebufferStatus ( GL_FRAMEBUFFER ));
}
}
- ( void )tearDownBuffers
{
if ( _framebuffer )
{
//delete framebuffer
glDeleteFramebuffers ( 1 , & _framebuffer );
_framebuffer = 0 ;
}
if ( _colorRenderbuffer )
{
//delete color render buffer
glDeleteRenderbuffers ( 1 , & _colorRenderbuffer );
_colorRenderbuffer = 0 ;
}
Search WWH ::




Custom Search