X-Git-Url: http://git.mutantstargoat.com?a=blobdiff_plain;f=src%2Fgfxapi.h;h=d6b1fd1de9cf23172996e7f385dabb727de23653;hb=05d269a194496bcef85da78652b947f5bf1c9bcf;hp=d3dcd4d7d19b06f311692fde7b50a6c981525099;hpb=3bf3536271e4afa8a8a93c75e2ab1256c0bf718a;p=demo diff --git a/src/gfxapi.h b/src/gfxapi.h index d3dcd4d..d6b1fd1 100644 --- a/src/gfxapi.h +++ b/src/gfxapi.h @@ -2,17 +2,31 @@ #define GFXAPI_H_ class Mesh; -class Texture; class ShaderProgram; class Shader; +class Texture; +class UniformBuffer; enum Gfx_API { GFX_GL, GFX_VK }; +enum Gfx_cull_face { + GFX_CULL_NONE, + GFX_CULL_FRONT, + GFX_CULL_BACK +}; + extern void (*gfx_clear)(float r, float g, float b); extern void (*gfx_viewport)(int x, int y, int width, int height); +extern void (*gfx_zbuffer)(bool enable); +extern void (*gfx_cull_face)(Gfx_cull_face cf); +extern void (*gfx_reshape)(int width, int height); +extern void (*gfx_wireframe)(bool enable); +extern void (*gfx_swapbuffers)(); +extern void (*gfx_begin_drawing)(); +extern void (*gfx_end_drawing)(); bool gfx_init(Gfx_API api); void gfx_cleanup(); @@ -21,6 +35,8 @@ Mesh *gfx_create_mesh(); Texture *gfx_create_texture(); ShaderProgram *gfx_create_shader_program(); Shader *gfx_create_shader(); +UniformBuffer *gfx_create_uniform_buffer(); + char *gfx_get_shader_path(); -#endif // GFXAPI_H_ \ No newline at end of file +#endif // GFXAPI_H_