static void clear(float r, float g, float b);
static void viewport(int x, int y, int width, int height);
+static void zbuffer(bool enable);
+static void cull_face(Gfx_cull_face cf);
bool init_opengl()
{
gfx_clear = clear;
gfx_viewport = viewport;
+ gfx_zbuffer = zbuffer;
+ gfx_cull_face = cull_face;
return true;
}
static void viewport(int x, int y, int width, int height)
{
glViewport(x, y, width, height);
+}
+
+static void zbuffer(bool enable)
+{
+ if(enable)
+ glEnable(GL_DEPTH_TEST);
+ else
+ glDisable(GL_DEPTH_TEST);
+}
+
+static void cull_face(Gfx_cull_face cf)
+{
+ switch(cf) {
+ case GFX_CULL_NONE:
+ glDisable(GL_CULL_FACE);
+ break;
+ case GFX_CULL_FRONT:
+ glEnable(GL_CULL_FACE);
+ glCullFace(GL_FRONT);
+ break;
+ case GFX_CULL_BACK:
+ glEnable(GL_CULL_FACE);
+ glCullFace(GL_BACK);
+ break;
+ }
}
\ No newline at end of file