Nebula
Loading...
Searching...
No Matches
vkpass.cc File Reference
#include "vkpass.h"
#include "vkgraphicsdevice.h"
#include "vktypes.h"
#include "coregraphics/config.h"
#include "coregraphics/shaderserver.h"
#include "vktextureview.h"
#include "coregraphics/pass.h"
#include "system_shaders/shared.h"

Classes

struct  CoreGraphics::SubpassInfo
 

Namespaces

namespace  Vulkan
 Vulkan implementation of GPU acceleration structure.
 
namespace  CoreGraphics
 Acceleration structures are used to enable ray tracing on the GPU by dividing the scene into a BVH.
 

Functions

const VkRenderPassBeginInfo & Vulkan::PassGetVkRenderPassBeginInfo (const CoreGraphics::PassId &id)
 get vk render pass
 
const VkGraphicsPipelineCreateInfo & Vulkan::PassGetVkFramebufferInfo (const CoreGraphics::PassId &id)
 get vk framebuffer info
 
const SizeT Vulkan::PassGetVkNumAttachments (const CoreGraphics::PassId &id)
 get number of pass attachments
 
const VkDevice Vulkan::PassGetVkDevice (const CoreGraphics::PassId &id)
 Get device creating this pass.
 
const VkFramebuffer Vulkan::PassGetVkFramebuffer (const CoreGraphics::PassId &id)
 Get framebuffer.
 
const VkRenderPass Vulkan::PassGetVkRenderPass (const CoreGraphics::PassId &id)
 Get pass.
 
Math::rectangle< int > CoreGraphics::VkViewportToRect (const VkViewport &vp)
 
Math::rectangle< int > CoreGraphics::VkScissorToRect (const VkRect2D &sc)
 
void CoreGraphics::GetSubpassInfo (const VkPassLoadInfo &loadInfo, Util::FixedArray< VkSubpassDescription > &outDescs, Util::Array< VkSubpassDependency > &outDeps, Util::FixedArray< VkAttachmentDescription > &outAttachments, Util::Array< uint32 > &usedAttachmentCounts, Util::FixedArray< VkPipelineViewportStateCreateInfo > &outPipelineInfos, uint32 &numUsedAttachmentsTotal)
 
void CoreGraphics::SetupPass (const PassId pid)
 
const PassId CoreGraphics::CreatePass (const PassCreateInfo &info)
 create pass
 
void CoreGraphics::DestroyPass (const PassId id)
 discard pass
 
void CoreGraphics::PassWindowResizeCallback (const PassId id)
 called when window is resized
 
void CoreGraphics::PassSetRenderTargetParameters (const PassId id, const Util::FixedArray< Shared::RenderTargetParameters > &viewports)
 Set viewports.
 
const Util::Array< CoreGraphics::TextureViewId > & CoreGraphics::PassGetAttachments (const CoreGraphics::PassId id)
 get number of color attachments for entire pass (attachment list)
 
const uint32_t CoreGraphics::PassGetNumSubpassAttachments (const CoreGraphics::PassId id, const IndexT subpass)
 get number of color attachments for a subpass
 
const CoreGraphics::ResourceTableId CoreGraphics::PassGetResourceTable (const CoreGraphics::PassId id)
 Get pass resource table.
 
const Util::StringAtom CoreGraphics::PassGetName (const CoreGraphics::PassId id)
 get name
 

Variables

VkPassAllocator Vulkan::passAllocator (0x00FFFFFF)
 
Util::FixedArray< SubpassInfoCoreGraphics::subpassInfos