Nebula
Loading...
Searching...
No Matches
vkgraphicsdevice.h File Reference

Go to the source code of this file.

Namespaces

namespace  Vulkan
 Vulkan implementation of GPU acceleration structure.

Functions

void Vulkan::SetupAdapter (CoreGraphics::GraphicsDeviceCreateInfo::Features features)
 setup graphics adapter
VkInstance Vulkan::GetInstance ()
 get vk instance
VkDevice Vulkan::GetCurrentDevice ()
 get the currently activated device
VkPhysicalDevice Vulkan::GetCurrentPhysicalDevice ()
 get the currently activated physical device
VkPhysicalDeviceFeatures Vulkan::GetCurrentFeatures ()
 get the current device features
VkPipelineCache Vulkan::GetPipelineCache ()
 get pipeline cache
VkPhysicalDeviceMemoryProperties Vulkan::GetMemoryProperties ()
 get memory properties
VkCommandBuffer Vulkan::GetMainBuffer (const CoreGraphics::QueueType queue)
 get main command buffer
VkSemaphore Vulkan::GetRenderingSemaphore ()
 get final rendering semaphore
void Vulkan::DelayedDeleteVkBuffer (const VkDevice dev, const VkBuffer buf)
 Add VkBuffer for late delete.
VkQueryPool Vulkan::GetQueryPool (const CoreGraphics::QueryType query)
 Get query pool.
const VkQueue Vulkan::GetQueue (const CoreGraphics::QueueType type, const IndexT index)
 get queue from index and family
const VkQueue Vulkan::GetCurrentQueue (const CoreGraphics::QueueType type)
 get currently active queue of type
VkPipeline Vulkan::GetOrCreatePipeline (CoreGraphics::PassId pass, uint subpass, CoreGraphics::ShaderProgramId program, const CoreGraphics::InputAssemblyKey inputAssembly, const VkGraphicsPipelineCreateInfo &info)
 Generate or return cached VkPipeline.
CoreGraphics::PipelineId Vulkan::PipelineExists (CoreGraphics::PassId pass, uint subpass, CoreGraphics::ShaderProgramId program, const CoreGraphics::InputAssemblyKey inputAssembly, const VkGraphicsPipelineCreateInfo &info)
 Return true if pipeline already exists.
void Vulkan::CachePipeline (CoreGraphics::PassId pass, uint subpass, CoreGraphics::ShaderProgramId program, const CoreGraphics::InputAssemblyKey inputAssembly, const VkGraphicsPipelineCreateInfo &info, const CoreGraphics::PipelineId pipeline)
 Cache a new pipeline.
void Vulkan::InvalidatePipeline (const CoreGraphics::PipelineId id)
 Invalidate pipeline.
void Vulkan::SparseTextureBind (const VkImage img, const Util::Array< VkSparseMemoryBind > &opaqueBinds, const Util::Array< VkSparseImageMemoryBind > &pageBinds)
 perform a set of sparse image binding operations
void Vulkan::SparseBufferBind (const VkBuffer buf, const Util::Array< VkSparseMemoryBind > &binds)
 Perform a set of sparse binding operations for buffers.
void Vulkan::ClearPending ()
 Clear pending resources.
void Vulkan::DeviceLost ()
 Handle VK Results.