Cvenom::vulkan::Allocator | |
Cvenom::vulkan::AttachmentsManager | |
Cvenom::common::BindlessTexturesIdManager | |
Cvenom::vulkan::VulkanMesh::BoundVkBuffer | |
Cvenom::vulkan::Buffer | |
▼Cvenom::vulkan::CommandBuffer | Command Buffer class, only instanciable by VulkanCommandPool. To use them, you need to create a VulkanCommandPool and then create/access them via VulkanCommandPool. To make sure destruction and memory is handled in a correct way for command buffers, only VulkanCommandPool should own them |
Cvenom::vulkan::SingleTimeCommandBuffer | |
Cvenom::vulkan::CommandPool | |
Cvenom::vulkan::CommandPoolManager | |
Cvenom::common::Config | |
Cvenom::common::Context | |
▼Cvenom::vulkan::DebugApplication | |
Cvenom::vulkan::VulkanApplication | |
Cvenom::common::ShaderResourceTable::Descriptor | |
Cvenom::vulkan::DescriptorPool | |
Cvenom::vulkan::DescriptorSet | |
Cvenom::vulkan::DescriptorSetGroup | Regroups descriptor sets by frame, so if updates have to be done by group, they will be done on the group directly |
Cvenom::vulkan::DescriptorSetGroupAllocator | |
Cvenom::vulkan::DescriptorSetLayout | |
Cvenom::common::DLL | Contains a shared library handle and provides a way to get symbols from it, can only be created through DLL::Create() |
Cvenom::common::DLL_Cache | Holds all DLLs loaded in memory unless explicitly unloaded/deleted. Only instantiable by VenomEngine as it must not be deleted before all DLLs are unloaded. And also to centralize every wannabe singletons into one |
Cvenom::common::ECS | Entity Component System Will mainly encapsulate the fabulous flecs library (https://github.com/SanderMertens/flecs.git) This class will be contained in the VenomEngine class |
Cvenom::vulkan::Fence | |
Cvenom::common::FpsCounter | |
Cvenom::vulkan::Framebuffer | |
▼Cvenom::common::GraphicsCachedResource | Base class for cached resources |
►Cvenom::common::ModelResource | |
Cvenom::vulkan::VulkanModelResource | |
►Cvenom::common::ShaderResource | |
Cvenom::vulkan::VulkanShaderResource | |
►Cvenom::common::TextureResource | |
Cvenom::vulkan::VulkanTextureResource | |
▼Cvenom::common::GraphicsCachedResourceHolder | Base class for cached resource holders |
►Cvenom::common::ModelImpl | |
Cvenom::vulkan::VulkanModel | |
►Cvenom::common::ShaderPipelineImpl | |
Cvenom::vulkan::VulkanShaderPipeline | |
►Cvenom::common::TextureImpl | |
Cvenom::vulkan::VulkanTexture | |
▼Cvenom::common::GraphicsSettings | |
►Cvenom::common::GraphicsApplication | |
Cvenom::vulkan::VulkanApplication | |
Cvenom::vulkan::Image | |
Cvenom::vulkan::ImageView | |
Cvenom::vulkan::Instance | |
▼Cvenom::common::IPluginObject | |
►Cvenom::common::PluginObject | Base class for all the plugin objects Objects that will be loaded from the plugins as their implementations lie there As a user of VenomEngine, you should not care about that, unless you plan to create your own plugin |
►Cvenom::common::GraphicsPluginObject | Base class for graphics plugin objects |
►Cvenom::common::CameraImpl | |
Cvenom::vulkan::VulkanCamera | |
►Cvenom::common::GUI | |
Cvenom::vulkan::VulkanGUI | |
Cvenom::common::GraphicsApplication | |
►Cvenom::common::MaterialImpl | |
Cvenom::vulkan::VulkanMaterial | |
►Cvenom::common::MeshImpl | |
Cvenom::vulkan::VulkanMesh | |
Cvenom::common::ModelImpl | |
►Cvenom::common::RenderingPipelineImpl | |
Cvenom::vulkan::VulkanRenderingPipeline | |
Cvenom::common::ShaderPipelineImpl | |
►Cvenom::common::ShaderResourceTable | |
Cvenom::vulkan::VulkanShaderResourceTable | |
►Cvenom::common::SkyboxImpl | |
Cvenom::vulkan::VulkanSkybox | |
Cvenom::common::TextureImpl | |
►Cvenom::common::PluginObjectImpl | Interface for the PluginObject different implementations |
Cvenom::common::CameraImpl | |
Cvenom::common::MaterialImpl | |
Cvenom::common::MeshImpl | |
Cvenom::common::ModelImpl | |
Cvenom::common::RenderingPipelineImpl | |
Cvenom::common::ShaderPipelineImpl | |
Cvenom::common::SkyboxImpl | |
Cvenom::common::TextureImpl | |
Cvenom::common::LightManager | |
Cvenom::common::LightShaderStruct | |
Cvenom::common::Log | |
Cvenom::vulkan::LogicalDevice | |
Cvenom::vulkan::MappedQueueFamilies | |
Cvenom::common::MaterialComponent | MaterialComponent Contains all the data of a material component |
Cvenom::common::MaterialImpl::MaterialComponentResourceTable | |
Cvenom::common::MaterialImpl::MaterialResourceTable | |
Cvenom::common::MemoryPool | MemoryPool class to manage memory allocation and deallocation. For now, it's just a wrapper around memory C functions |
▼Cstd::optional | |
Cvenom::common::PluginObjectContainer< venom::common::Material > | |
Cvenom::common::PluginObjectContainer< T, typename > | Container for the PluginObjectImplWrapper Important to avoid it from loading the PluginObjectImpl if not needed e.g. if the object is optional |
Cvenom::vulkan::PhysicalDevice | |
▼Cvenom::common::Plugin | |
►Cvenom::common::GraphicsPlugin | |
Cvenom::vulkan::VulkanGraphicsPlugin | |
Cvenom::common::PluginManager | |
▼Cvenom::common::PluginObjectImplWrapper | Wrapper for the PluginObjectImpl, inherited by classes like Model or Mesh to make them usable as components (for ECS) and hold the Graphics API specific implementation |
Cvenom::common::Camera | Camera class Classic layout with position, rotation and projection matrices |
Cvenom::common::Material | |
Cvenom::common::Mesh | Contains all the mesh's data and is the main high-level interface for the user |
Cvenom::common::Model | Contains all the mesh's data and is the main high-level interface for the user |
Cvenom::common::RenderingPipeline | Interface with shader pipelines and shader settings |
Cvenom::common::ShaderPipeline | |
Cvenom::common::Skybox | |
Cvenom::common::Texture | |
Cvenom::vulkan::Queue | |
Cvenom::vulkan::QueueFamily | |
Cvenom::vulkan::QueueManager | |
Cvenom::vulkan::QueueManagerSettings | |
Cvenom::vulkan::RenderPass | |
Cvenom::common::Resources | |
Cvenom::vulkan::Sampler | |
Cvenom::vulkan::Semaphore | |
Cvenom::vulkan::StorageBuffer | |
Cvenom::vulkan::Surface | |
Cvenom::vulkan::SwapChain | |
▼Cvenom::common::TextureLoader | |
Cvenom::common::EXR_TextureLoader | |
Cvenom::common::Stbi_TextureLoader | |
Cvenom::common::Timer | |
▼Cvenom::common::Transform3D | |
Cvenom::common::CameraImpl | |
Cvenom::common::Light | |
Cvenom::vulkan::UniformBuffer | |
Cvenom::common::VenomEngine | Main class of the engine This class will be the main entry point of the engine. It will contain all the main components of the engine, as singleton are harder to manage, especially for unit tests and memory management |
Cvenom::common::VenomSettings | |
Cvenom::vulkan::VertexBuffer | |
Cvenom::common::ShaderPipelineImpl::VertexBufferLayout | |