Nebula's dynamic array class.
Definition array.h:60
QueryType
Definition config.h:52
QueueType
Definition config.h:40
Vulkan implementation of GPU acceleration structure.
Definition vkaccelerationstructure.cc:15
VkPhysicalDeviceMemoryProperties GetMemoryProperties()
get memory properties
Definition vkgraphicsdevice.cc:440
void DelayedDeleteVkBuffer(const VkDevice dev, const VkBuffer buf)
Add VkBuffer for late delete.
Definition vkgraphicsdevice.cc:449
void DeviceLost()
Handle VK Results.
Definition vkgraphicsdevice.cc:683
VkPipelineCache GetPipelineCache()
get pipeline cache
Definition vkgraphicsdevice.cc:431
void InvalidatePipeline(const CoreGraphics::PipelineId id)
Invalidate pipeline.
Definition vkgraphicsdevice.cc:542
const VkQueue GetCurrentQueue(const CoreGraphics::QueueType type)
get currently active queue of type
Definition vkgraphicsdevice.cc:489
void ClearPending()
Clear pending resources.
Definition vkgraphicsdevice.cc:579
void SparseTextureBind(const VkImage img, const Util::Array< VkSparseMemoryBind > &opaqueBinds, const Util::Array< VkSparseImageMemoryBind > &pageBinds)
perform a set of sparse image binding operations
Definition vkgraphicsdevice.cc:552
VkPipeline GetOrCreatePipeline(CoreGraphics::PassId pass, uint subpass, CoreGraphics::ShaderProgramId program, const CoreGraphics::InputAssemblyKey inputAssembly, const VkGraphicsPipelineCreateInfo &info)
Generate or return cached VkPipeline.
Definition vkgraphicsdevice.cc:499
CoreGraphics::PipelineId PipelineExists(CoreGraphics::PassId pass, uint subpass, CoreGraphics::ShaderProgramId program, const CoreGraphics::InputAssemblyKey inputAssembly, const VkGraphicsPipelineCreateInfo &info)
Return true if pipeline already exists.
Definition vkgraphicsdevice.cc:516
VkQueryPool GetQueryPool(const CoreGraphics::QueryType query)
Get query pool.
Definition vkgraphicsdevice.cc:461
VkInstance GetInstance()
get vk instance
Definition vkgraphicsdevice.cc:395
VkPhysicalDeviceFeatures GetCurrentFeatures()
get the current device features
Definition vkgraphicsdevice.cc:422
void SparseBufferBind(const VkBuffer buf, const Util::Array< VkSparseMemoryBind > &binds)
Perform a set of sparse binding operations for buffers.
Definition vkgraphicsdevice.cc:569
void CachePipeline(CoreGraphics::PassId pass, uint subpass, CoreGraphics::ShaderProgramId program, const CoreGraphics::InputAssemblyKey inputAssembly, const VkGraphicsPipelineCreateInfo &info, const CoreGraphics::PipelineId pipeline)
Cache a new pipeline.
Definition vkgraphicsdevice.cc:526
VkPhysicalDevice GetCurrentPhysicalDevice()
get the currently activated physical device
Definition vkgraphicsdevice.cc:413
VkDevice GetCurrentDevice()
get the currently activated device
Definition vkgraphicsdevice.cc:404
VkSemaphore GetRenderingSemaphore()
get final rendering semaphore
const VkQueue GetQueue(const CoreGraphics::QueueType type, const IndexT index)
get queue from index and family
Definition vkgraphicsdevice.cc:480
VkCommandBuffer GetMainBuffer(const CoreGraphics::QueueType queue)
get main command buffer
void SetupAdapter(CoreGraphics::GraphicsDeviceCreateInfo::Features features)
setup graphics adapter
Definition vkgraphicsdevice.cc:184
Definition graphicsdevice.h:76
unsigned int uint
Definition types.h:33
int IndexT
Definition types.h:41