projects
/
demo
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fixes
[demo]
/
src
/
gfxapi.cc
diff --git
a/src/gfxapi.cc
b/src/gfxapi.cc
index
58692a3
..
f50a317
100644
(file)
--- a/
src/gfxapi.cc
+++ b/
src/gfxapi.cc
@@
-6,15
+6,24
@@
#include "opengl/mesh-gl.h"
#include "opengl/texture-gl.h"
#include "opengl/shader-gl.h"
#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/mesh-vk.h"
#include "vulkan/texture-vk.h"
+#include "vulkan/uniforms-vk.h"
static Gfx_API api;
void (*gfx_clear)(float r, float g, float b);
void (*gfx_viewport)(int x, int y, int width, int height);
static Gfx_API api;
void (*gfx_clear)(float r, float g, float b);
void (*gfx_viewport)(int x, int y, int width, int height);
-
+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)
{
bool gfx_init(Gfx_API api)
{
@@
-74,8
+83,7
@@
ShaderProgram *gfx_create_shader_program()
case GFX_GL:
return new ShaderProgramGL;
case GFX_VK:
case GFX_GL:
return new ShaderProgramGL;
case GFX_VK:
- // return new ShaderProgramVK;
- return 0;
+ return new ShaderProgramVK;
}
return 0;
}
}
return 0;
}
@@
-86,8
+94,18
@@
Shader *gfx_create_shader()
case GFX_GL:
return new ShaderGL;
case GFX_VK:
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;
}
}
return 0;
}
@@
-96,9
+114,9
@@
char *gfx_get_shader_path()
{
switch(api) {
case GFX_GL:
{
switch(api) {
case GFX_GL:
- return (char *)"gl_shaders";
+ return (char *)"shaders";
case GFX_VK:
case GFX_VK:
- return (char *)"vk_shaders";
+ return (char *)"shaders/spirv";
}
}
- return (char*)"";
-}
\ No newline at end of file
+ return (char *)"";
+}