#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;
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)
{
case GFX_GL:
return new ShaderProgramGL;
case GFX_VK:
- // return new ShaderProgramVK;
- return 0;
+ return new ShaderProgramVK;
}
return 0;
}
case GFX_GL:
return new ShaderGL;
case GFX_VK:
- // return new ShaderVK;
- return 0;
+ return new ShaderVK;
+ }
+ return 0;
+}
+
+UniformBuffer *gfx_create_uniform_buffer()
+{
+ switch(api) {
+ case GFX_GL:
+ return new UniformBufferGL;
+ case GFX_VK:
+ return new UniformBufferVK;
}
return 0;
}
{
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 *)"";
-}
\ No newline at end of file
+}