summaryrefslogtreecommitdiff
path: root/render/vulkan
AgeCommit message (Collapse)Author
2025-03-20render: vulkan: make all types opaqueDanny Holman
Make all the types specific to Vulkan fully opaque. This brings most of the rendering backend in line with the project coding style. Signed-off-by: Danny Holman <dholman@gymli.org>
2024-11-27render: centralize the type definitionsDanny Holman
Centralize the type definitions for the Vulkan renderer. This removes the possibility for cyclic dependencies in the include paths. Signed-off-by: Danny Holman <dholman@gymli.org>
2024-11-19render: fix missing Vk*CreateInfo struct membersDanny Holman
Fix several instances of missing structure defines that cause validation errors. Signed-off-by: Danny Holman <dholman@gymli.org>
2024-11-19render: create a vkqueue struct for Vulkan queuesDanny Holman
Add a vkqueue struct to the Vulkan device interface and shift queue operations to helper functions that interact with this new struct. This makes the initialization routines more readable and simplifies the interface. Signed-off-by: Danny Holman <dholman@gymli.org>
2024-11-19render: streamline the common renderer interfaceDanny Holman
Streamline the common renderer interface such that all functionality is set by the renderer initialization function. This reduces the number of API functions and allows developers to define custom rendering interfaces easier. Signed-off-by: Danny Holman <dholman@gymli.org>
2024-10-28render: error check when creating device queuesDanny Holman
When creating Vulkan device queues, the returned queue objects should be check for NULL values. If any queue is invalid, the process must be aborted. Signed-off-by: Danny Holman <dholman@gymli.org>
2024-10-28render: move get_vkerr_str into vkassert.hDanny Holman
Move get_vkerr_str into vkassert.h and use its output in the vkassert function. This reduces the need for an error message argument when calling vkassert and makes error messages in logs consistent across the entire Vulkan renderer. Signed-off-by: Danny Holman <dholman@gymli.org>
2024-10-25render: call rune_free during renderer exitDanny Holman
Call rune_free on the renderer object during close. This ensures the memory is marked as free so that the memory API can clean it up. Signed-off-by: Danny Holman <dholman@gymli.org>
2024-10-25render: fix a build bug in the vulkan rendererDanny Holman
Fix a bug causing the build to fail during the compile step of the Vulkan renderer. The frame number has been moved into the swapchain struct and no longer exists in the context struct. Therefore, its initialization should be done inside the swapchain init function. Signed-off-by: Danny Holman <dholman@gymli.org>
2024-10-25render: move all rendering code out of uiDanny Holman
Move all the rendering code out of the UI subsystem. The new rendering API now has hooks that the UI code can make use of. Signed-off-by: Danny Holman <dholman@gymli.org>
2024-10-25render: create the rendering subsystemDanny Holman
Create the rendering subsystem and populate it with a basic Vulkan renderer. This renderer is not yet functional and should not be used yet. Signed-off-by: Danny Holman <dholman@gymli.org>