From 0d4f5f665f2e4b735fb4f978acc6c8d4a16fcb5d Mon Sep 17 00:00:00 2001 From: hachem Date: Fri, 22 Aug 2025 00:22:12 +0200 Subject: feat: frame exporting --- src/rendering/renderer.h | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'src/rendering/renderer.h') diff --git a/src/rendering/renderer.h b/src/rendering/renderer.h index 67ad998..ea200db 100644 --- a/src/rendering/renderer.h +++ b/src/rendering/renderer.h @@ -3,6 +3,7 @@ #include "core/memory.h" #include "vertex_array.h" #include "shader.h" +#include "framebuffer.h" #include @@ -41,6 +42,8 @@ namespace Donut virtual void bind_image_texture(uint32_t texture_id, uint32_t slot = 0, bool read_only = false) = 0; + virtual void read_pixels(uint32_t x, uint32_t y, uint32_t width, uint32_t height, + uint32_t format, uint32_t type, void* pixels) = 0; inline static API get_api() { return s_api; } inline static void set_api(API api) { s_api = api; } @@ -122,6 +125,12 @@ namespace Donut s_renderer_api->bind_image_texture(texture_id, slot, read_only); } + inline static void read_pixels(uint32_t x, uint32_t y, uint32_t width, uint32_t height, + uint32_t format, uint32_t type, void* pixels) + { + s_renderer_api->read_pixels(x, y, width, height, format, type, pixels); + } + private: static Scope s_renderer_api; }; -- cgit v1.3