X-Git-Url: http://git.mutantstargoat.com?a=blobdiff_plain;f=src%2Fgfxapi.cc;h=f50a3175ee1157ee6af17b6cbd24d18875b73c1b;hb=0f6519c2606f2863d9c7ee8b9754b9f23df281ab;hp=f17055f8e345cc8e4d75e3d64a4998e81dbfc8c1;hpb=72995482b98ff2a014ddd737131a0935ead89977;p=demo diff --git a/src/gfxapi.cc b/src/gfxapi.cc index f17055f..f50a317 100644 --- a/src/gfxapi.cc +++ b/src/gfxapi.cc @@ -6,10 +6,12 @@ #include "opengl/mesh-gl.h" #include "opengl/texture-gl.h" #include "opengl/shader-gl.h" +#include "opengl/uniforms-gl.h" #include "vulkan/shader-vk.h" #include "vulkan/mesh-vk.h" #include "vulkan/texture-vk.h" +#include "vulkan/uniforms-vk.h" static Gfx_API api; @@ -19,6 +21,9 @@ void (*gfx_zbuffer)(bool enable); void (*gfx_cull_face)(Gfx_cull_face cf); void (*gfx_reshape)(int width, int height); void (*gfx_wireframe)(bool enable); +void (*gfx_swapbuffers)(); +void (*gfx_begin_drawing)(); +void (*gfx_end_drawing)(); bool gfx_init(Gfx_API api) { @@ -94,13 +99,24 @@ Shader *gfx_create_shader() return 0; } +UniformBuffer *gfx_create_uniform_buffer() +{ + switch(api) { + case GFX_GL: + return new UniformBufferGL; + case GFX_VK: + return new UniformBufferVK; + } + return 0; +} + char *gfx_get_shader_path() { switch(api) { case GFX_GL: - return (char *)"gl_shaders"; + return (char *)"shaders"; case GFX_VK: - return (char *)"vk_shaders"; + return (char *)"shaders/spirv"; } return (char *)""; }