diff options
-rw-r--r-- | include/rune/render/renderer.h | 10 | ||||
-rw-r--r-- | render/directx/renderer.c | 4 | ||||
-rw-r--r-- | render/vulkan/renderer.c | 5 |
3 files changed, 6 insertions, 13 deletions
diff --git a/include/rune/render/renderer.h b/include/rune/render/renderer.h index e95a0eb..ebf8602 100644 --- a/include/rune/render/renderer.h +++ b/include/rune/render/renderer.h @@ -23,11 +23,10 @@ #define RUNE_RENDER_RENDERER_H #include <rune/util/types.h> -#include <rune/ui/window.h> +#include <rune/ui/app_window.h> struct rune_renderer { - int (*init)(struct rune_window *window); - void (*close)(struct rune_renderer *renderer); + void (*close)(void); void (*draw)(void); void (*clear)(void); }; @@ -35,9 +34,4 @@ struct rune_renderer { RAPI struct rune_renderer* select_render_vulkan(struct rune_window *window); RAPI struct rune_renderer* select_render_directx(struct rune_window *window); -RAPI void rune_render_draw(struct rune_renderer *renderer); -RAPI void rune_render_clear(struct rune_renderer *renderer); - -RAPI void rune_destroy_renderer(struct rune_renderer *renderer); - #endif diff --git a/render/directx/renderer.c b/render/directx/renderer.c index 4cecf6f..c0cac9c 100644 --- a/render/directx/renderer.c +++ b/render/directx/renderer.c @@ -1,6 +1,6 @@ -#include <rune/ui/renderer.h> -#include <rune/core/logging.h> #include <rune/core/abort.h> +#include <rune/core/logging.h> +#include <rune/render/renderer.h> #ifdef _WIN32 diff --git a/render/vulkan/renderer.c b/render/vulkan/renderer.c index caf269a..0facddf 100644 --- a/render/vulkan/renderer.c +++ b/render/vulkan/renderer.c @@ -129,7 +129,7 @@ int _init_vulkan(struct rune_window *window) { return 0; } -void _close_vulkan(struct rune_renderer *renderer) { +void _close_vulkan(void) { vkDeviceWaitIdle(context->dev->ldev); for (uint8_t i = 0; i < context->swapchain->max_frames; i++) { if (context->image_semaphores[i] != NULL) @@ -158,11 +158,10 @@ void _clear_vulkan(void) { struct rune_renderer* select_render_vulkan(struct rune_window *window) { struct rune_renderer *ret = rune_alloc(sizeof(struct rune_renderer)); - ret->init = _init_vulkan; ret->close = _close_vulkan; ret->draw = _draw_vulkan; ret->clear = _clear_vulkan; - if ((*ret->init)(window) != 0) + if (_init_vulkan(window) != 0) rune_abort(); return ret; } |