diff options
| author | ladevieq <ladevie.quentin@gmail.com> | 2022-07-19 23:52:56 +0200 |
|---|---|---|
| committer | ladevieq <ladevie.quentin@gmail.com> | 2022-07-19 23:52:56 +0200 |
| commit | 9cf2e341adfdb389c0dd8eb9a621d83ccba78826 (patch) | |
| tree | 0f54383d6f0c7a709cd98b02259b722c76baa4b8 /include | |
| parent | 715ab680e68f62a3a00777e81b18f8e64110058d (diff) | |
Fix window resize on windows
Diffstat (limited to 'include')
| -rw-r--r-- | include/primitive-renderpass.hpp | 2 | ||||
| -rw-r--r-- | include/vk-api.hpp | 2 | ||||
| -rw-r--r-- | include/vk-renderer.hpp | 2 | ||||
| -rw-r--r-- | include/window.hpp | 14 |
4 files changed, 13 insertions, 7 deletions
diff --git a/include/primitive-renderpass.hpp b/include/primitive-renderpass.hpp index 2e0a77b..8dda772 100644 --- a/include/primitive-renderpass.hpp +++ b/include/primitive-renderpass.hpp @@ -64,7 +64,7 @@ class Primitive { void set_constant(off_t offset, Buffer* buffer); void set_constant(off_t offset, Sampler* sampler); - void set_index_buffer(Buffer* index_buffer); + void set_index_buffer(Buffer* buffer); void set_scissor(int32_t x, int32_t y, uint32_t width, uint32_t height); diff --git a/include/vk-api.hpp b/include/vk-api.hpp index 2c00b40..f4376cd 100644 --- a/include/vk-api.hpp +++ b/include/vk-api.hpp @@ -163,7 +163,7 @@ class vkapi { void destroy_descriptor_sets(std::vector<VkDescriptorSet> &descriptor_sets); - VkSurfaceKHR create_surface(window& wnd); + VkSurfaceKHR create_surface(window& wnd) const; void destroy_surface(VkSurfaceKHR surface); diff --git a/include/vk-renderer.hpp b/include/vk-renderer.hpp index a6107cd..5efb7d6 100644 --- a/include/vk-renderer.hpp +++ b/include/vk-renderer.hpp @@ -39,6 +39,8 @@ class vkrenderer { Texture* create_2d_texture(size_t width, size_t height, VkFormat format); + void destroy_2d_texture(Texture* texture); + Sampler* create_sampler(VkFilter filter, VkSamplerAddressMode address_mode); ComputeRenderpass* create_compute_renderpass(); diff --git a/include/window.hpp b/include/window.hpp index 3f0fa01..aeea39a 100644 --- a/include/window.hpp +++ b/include/window.hpp @@ -134,18 +134,22 @@ struct event { class window { public: - window(uint32_t width, uint32_t height); + window(uint32_t desired_width, uint32_t desired_height); ~window(); void poll_events(); - #if defined(WINDOWS) + void message_loop(); + LRESULT message_handler(HWND hwnd, UINT umsg, WPARAM wparam, LPARAM lparam); static LRESULT CALLBACK window_procedure(HWND hwnd, UINT umsg, WPARAM wparam, LPARAM lparam); - HWND win_handle; + HWND window_handle {}; + WNDCLASS window_class {}; + LPVOID main_fiber; + LPVOID message_loop_fiber; #elif defined(LINUX) xcb_connection_t* connection; xcb_window_t win; @@ -164,8 +168,8 @@ class window { bool isOpen; - bool keyboard[KEYS::MAX_KEYS] = { false }; - bool mouse[BUTTONS::MAX_BUTTONS] = { false }; + bool keyboard[KEYS::MAX_KEYS] { false }; + bool mouse[BUTTONS::MAX_BUTTONS] { false }; }; #endif // !__WINDOW_HPP_ |
