Graphics Reference
In-Depth Information
//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
;
}
}
- (
void
)drawFrame
{
//bind framebuffer & set viewport
glBindFramebuffer
(
GL_FRAMEBUFFER
,
_framebuffer
);
glViewport
(
0
,
0
,
_framebufferWidth
,
_framebufferHeight
);
//bind shader program
[
self
.
effect
prepareToDraw
];
//clear the screen
glClear
(
GL_COLOR_BUFFER_BIT
);
glClearColor
(
0.0
,
0.0
,
0.0
,
0.0
);
//set up vertices
GLfloat
vertices[] =
{
-
1.0f
, -
1.0f
,
-
1.0f
,
1.0f
,
1.0f
,
1.0f
,
1.0f
, -
1.0f
};