diff --git a/example/main.cpp b/example/main.cpp index 20c0c376b..36e69f775 100644 --- a/example/main.cpp +++ b/example/main.cpp @@ -8,6 +8,7 @@ int main(int argc, char *argv[]) { auto renderer = std::make_unique(argc, argv); renderer->run(); } catch (const std::exception &exception) { + // This will catch any exception that was not catched previously. spdlog::critical(exception.what()); return 1; } diff --git a/include/inexor/vulkan-renderer/imgui.hpp b/include/inexor/vulkan-renderer/imgui.hpp index 0ec531814..5fb6da75c 100644 --- a/include/inexor/vulkan-renderer/imgui.hpp +++ b/include/inexor/vulkan-renderer/imgui.hpp @@ -1,7 +1,7 @@ #pragma once #include "inexor/vulkan-renderer/render_graph.hpp" -#include "inexor/vulkan-renderer/wrapper/descriptor.hpp" +#include "inexor/vulkan-renderer/wrapper/descriptors/descriptor.hpp" #include "inexor/vulkan-renderer/wrapper/gpu_texture.hpp" #include "inexor/vulkan-renderer/wrapper/shader.hpp" @@ -32,7 +32,7 @@ class ImGUIOverlay { std::unique_ptr m_imgui_texture; std::unique_ptr m_vertex_shader; std::unique_ptr m_fragment_shader; - std::unique_ptr m_descriptor; + std::unique_ptr m_descriptor; std::vector m_index_data; std::vector m_vertex_data; diff --git a/include/inexor/vulkan-renderer/renderer.hpp b/include/inexor/vulkan-renderer/renderer.hpp index 3067e4d66..63d9e0193 100644 --- a/include/inexor/vulkan-renderer/renderer.hpp +++ b/include/inexor/vulkan-renderer/renderer.hpp @@ -48,7 +48,7 @@ class VulkanRenderer { std::vector m_shaders; std::vector m_textures; std::vector m_uniform_buffers; - std::vector m_descriptors; + std::vector m_descriptors; std::vector m_octree_vertices; std::vector m_octree_indices; diff --git a/include/inexor/vulkan-renderer/wrapper/descriptor.hpp b/include/inexor/vulkan-renderer/wrapper/descriptors/descriptor.hpp similarity index 93% rename from include/inexor/vulkan-renderer/wrapper/descriptor.hpp rename to include/inexor/vulkan-renderer/wrapper/descriptors/descriptor.hpp index 2dff130c9..3bbc45d02 100644 --- a/include/inexor/vulkan-renderer/wrapper/descriptor.hpp +++ b/include/inexor/vulkan-renderer/wrapper/descriptors/descriptor.hpp @@ -6,9 +6,11 @@ #include namespace inexor::vulkan_renderer::wrapper { - // Forward declaration class Device; +} // namespace inexor::vulkan_renderer::wrapper + +namespace inexor::vulkan_renderer::wrapper::descriptors { /// @brief RAII wrapper class for resource descriptors. class ResourceDescriptor { @@ -49,4 +51,4 @@ class ResourceDescriptor { } }; -} // namespace inexor::vulkan_renderer::wrapper +} // namespace inexor::vulkan_renderer::wrapper::descriptors diff --git a/include/inexor/vulkan-renderer/wrapper/descriptor_builder.hpp b/include/inexor/vulkan-renderer/wrapper/descriptors/descriptor_builder.hpp similarity index 96% rename from include/inexor/vulkan-renderer/wrapper/descriptor_builder.hpp rename to include/inexor/vulkan-renderer/wrapper/descriptors/descriptor_builder.hpp index c0b53f034..ac886dfbb 100644 --- a/include/inexor/vulkan-renderer/wrapper/descriptor_builder.hpp +++ b/include/inexor/vulkan-renderer/wrapper/descriptors/descriptor_builder.hpp @@ -10,9 +10,12 @@ #include namespace inexor::vulkan_renderer::wrapper { - -// Forward declarations +// Forward declaration class Device; +} // namespace inexor::vulkan_renderer::wrapper + +namespace inexor::vulkan_renderer::wrapper::descriptors { + class ResourceDescriptor; class DescriptorBuilder { @@ -96,4 +99,4 @@ DescriptorBuilder &DescriptorBuilder::add_uniform_buffer(const VkBuffer uniform_ return *this; } -} // namespace inexor::vulkan_renderer::wrapper +} // namespace inexor::vulkan_renderer::wrapper::descriptors diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 127c80949..d5d884abf 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -22,8 +22,6 @@ set(INEXOR_SOURCE_FILES vulkan-renderer/tools/representation.cpp vulkan-renderer/wrapper/cpu_texture.cpp - vulkan-renderer/wrapper/descriptor.cpp - vulkan-renderer/wrapper/descriptor_builder.cpp vulkan-renderer/wrapper/device.cpp vulkan-renderer/wrapper/framebuffer.cpp vulkan-renderer/wrapper/gpu_memory_buffer.cpp @@ -38,6 +36,9 @@ set(INEXOR_SOURCE_FILES vulkan-renderer/wrapper/commands/command_buffer.cpp vulkan-renderer/wrapper/commands/command_pool.cpp + vulkan-renderer/wrapper/descriptors/descriptor.cpp + vulkan-renderer/wrapper/descriptors/descriptor_builder.cpp + vulkan-renderer/wrapper/window/window.cpp vulkan-renderer/wrapper/window/surface.cpp diff --git a/src/vulkan-renderer/application.cpp b/src/vulkan-renderer/application.cpp index 157f681f3..fb2fc6437 100644 --- a/src/vulkan-renderer/application.cpp +++ b/src/vulkan-renderer/application.cpp @@ -9,7 +9,7 @@ #include "inexor/vulkan-renderer/tools/enumerate.hpp" #include "inexor/vulkan-renderer/world/collision.hpp" #include "inexor/vulkan-renderer/wrapper/cpu_texture.hpp" -#include "inexor/vulkan-renderer/wrapper/descriptor_builder.hpp" +#include "inexor/vulkan-renderer/wrapper/descriptors/descriptor_builder.hpp" #include "inexor/vulkan-renderer/wrapper/instance.hpp" #include @@ -451,7 +451,7 @@ Application::Application(int argc, char **argv) { // Create an instance of the resource descriptor builder. // This allows us to make resource descriptors with the help of a builder pattern. - wrapper::DescriptorBuilder descriptor_builder(*m_device); + wrapper::descriptors::DescriptorBuilder descriptor_builder(*m_device); // Make use of the builder to create a resource descriptor for the uniform buffer. m_descriptors.emplace_back( diff --git a/src/vulkan-renderer/imgui.cpp b/src/vulkan-renderer/imgui.cpp index 01d786397..4981c1784 100644 --- a/src/vulkan-renderer/imgui.cpp +++ b/src/vulkan-renderer/imgui.cpp @@ -1,7 +1,7 @@ #include "inexor/vulkan-renderer/imgui.hpp" #include "inexor/vulkan-renderer/wrapper/cpu_texture.hpp" -#include "inexor/vulkan-renderer/wrapper/descriptor_builder.hpp" +#include "inexor/vulkan-renderer/wrapper/descriptors/descriptor_builder.hpp" #include "inexor/vulkan-renderer/wrapper/make_info.hpp" #include @@ -78,10 +78,10 @@ ImGUIOverlay::ImGUIOverlay(const wrapper::Device &device, const wrapper::Swapcha // Create an instance of the resource descriptor builder. // This allows us to make resource descriptors with the help of a builder pattern. - wrapper::DescriptorBuilder descriptor_builder(m_device); + wrapper::descriptors::DescriptorBuilder descriptor_builder(m_device); // Make use of the builder to create a resource descriptor for the combined image sampler. - m_descriptor = std::make_unique( + m_descriptor = std::make_unique( descriptor_builder.add_combined_image_sampler(m_imgui_texture->sampler(), m_imgui_texture->image_view(), 0) .build("ImGUI")); diff --git a/src/vulkan-renderer/wrapper/descriptor.cpp b/src/vulkan-renderer/wrapper/descriptors/descriptor.cpp similarity index 95% rename from src/vulkan-renderer/wrapper/descriptor.cpp rename to src/vulkan-renderer/wrapper/descriptors/descriptor.cpp index 4bbcd0349..4fc50b834 100644 --- a/src/vulkan-renderer/wrapper/descriptor.cpp +++ b/src/vulkan-renderer/wrapper/descriptors/descriptor.cpp @@ -1,4 +1,4 @@ -#include "inexor/vulkan-renderer/wrapper/descriptor.hpp" +#include "inexor/vulkan-renderer/wrapper/descriptors/descriptor.hpp" #include "inexor/vulkan-renderer/exception.hpp" #include "inexor/vulkan-renderer/wrapper/device.hpp" @@ -7,7 +7,7 @@ #include #include -namespace inexor::vulkan_renderer::wrapper { +namespace inexor::vulkan_renderer::wrapper::descriptors { ResourceDescriptor::ResourceDescriptor(ResourceDescriptor &&other) noexcept : m_device(other.m_device) { m_name = std::move(other.m_name); @@ -91,4 +91,4 @@ ResourceDescriptor::~ResourceDescriptor() { vkDestroyDescriptorPool(m_device.device(), m_descriptor_pool, nullptr); } -} // namespace inexor::vulkan_renderer::wrapper +} // namespace inexor::vulkan_renderer::wrapper::descriptors diff --git a/src/vulkan-renderer/wrapper/descriptor_builder.cpp b/src/vulkan-renderer/wrapper/descriptors/descriptor_builder.cpp similarity index 87% rename from src/vulkan-renderer/wrapper/descriptor_builder.cpp rename to src/vulkan-renderer/wrapper/descriptors/descriptor_builder.cpp index 819306047..3ccd0ccf1 100644 --- a/src/vulkan-renderer/wrapper/descriptor_builder.cpp +++ b/src/vulkan-renderer/wrapper/descriptors/descriptor_builder.cpp @@ -1,11 +1,11 @@ -#include "inexor/vulkan-renderer/wrapper/descriptor_builder.hpp" +#include "inexor/vulkan-renderer/wrapper/descriptors/descriptor_builder.hpp" -#include "inexor/vulkan-renderer/wrapper/descriptor.hpp" +#include "inexor/vulkan-renderer/wrapper/descriptors/descriptor.hpp" #include "inexor/vulkan-renderer/wrapper/device.hpp" #include -namespace inexor::vulkan_renderer::wrapper { +namespace inexor::vulkan_renderer::wrapper::descriptors { DescriptorBuilder::DescriptorBuilder(const Device &device) : m_device(device) { assert(m_device.device()); @@ -58,4 +58,4 @@ DescriptorBuilder &DescriptorBuilder::add_combined_image_sampler(const VkSampler return *this; } -} // namespace inexor::vulkan_renderer::wrapper +} // namespace inexor::vulkan_renderer::wrapper::descriptors