nngn
Loading...
Searching...
No Matches
anonymous_namespace{vulkan.cpp}::ShadowMap Class Reference
Inheritance diagram for anonymous_namespace{vulkan.cpp}::ShadowMap:
Collaboration diagram for anonymous_namespace{vulkan.cpp}::ShadowMap:

Public Member Functions

 ShadowMap ()=default
 
u32 size () const
 
std::span< const VkImageView > layer_views () const
 
std::span< const VkImageView > frame_views () const
 
void set_size (u32 s)
 
bool init (VkDevice dev, nngn::DeviceMemory *dev_mem, VkCommandBuffer cmd, std::size_t n_frames, u32 n, VkExtent3D extent)
 
void destroy (VkDevice dev, nngn::DeviceMemory *dev_mem)
 
- Public Member Functions inherited from anonymous_namespace{vulkan.cpp}::TexArray
VkImageView view () const
 
bool init (VkDevice dev, nngn::DeviceMemory *dev_mem, VkCommandBuffer cmd, VkImageCreateFlags flags, VkFormat format, VkExtent3D extent, std::uint32_t mip_levels, std::uint32_t n_layers, VkImageUsageFlags usage, VkImageAspectFlags aspects, VkImageLayout layout, VkImageViewType view_type, VkPipelineStageFlags src_stage, VkPipelineStageFlags dst_stage, VkAccessFlags src_mask, VkAccessFlags dst_mask)
 
void destroy (VkDevice dev, nngn::DeviceMemory *dev_mem)
 
- Public Member Functions inherited from nngn::Image
VkImage id () const
 
VkDeviceMemory mem () const
 
void destroy (VkDevice dev, DeviceMemory *dev_mem)
 
template<VkMemoryPropertyFlags f>
bool init (VkDevice dev, DeviceMemory *dev_mem, VkImageCreateFlags flags, VkImageType type, VkFormat format, VkExtent3D extent, std::uint32_t mip_levels, std::uint32_t n_layers, VkSampleCountFlagBits n_samples, VkImageTiling tiling, VkImageUsageFlags usage)
 
bool init_mipmaps (VkCommandBuffer cmd, VkExtent3D extent, std::uint32_t mip_levels, std::uint32_t base_layer, std::uint32_t n_layers) const
 
bool create_view (VkDevice dev, VkImageViewType type, VkFormat format, VkImageAspectFlags aspect_flags, std::uint32_t mip_levels, std::uint32_t base_layer, std::uint32_t n_layers, VkImageView *p) const
 
void transition_layout (VkCommandBuffer cmd, VkPipelineStageFlags src_stage, VkPipelineStageFlags dst_stage, VkAccessFlags src_mask, VkAccessFlags dst_mask, VkImageLayout src, VkImageLayout dst, const VkImageSubresourceRange &range) const
 

Protected Member Functions

 ShadowMap (u32 size_)
 
bool init (VkDevice dev, nngn::DeviceMemory *dev_mem, VkCommandBuffer cmd, std::size_t n_frames, u32 n, VkExtent3D extent, VkImageCreateFlags flags, VkImageViewType view_type)
 
bool init_layer_views (VkDevice dev, u32 n, u32 n_layers_per_view, VkImageViewType type, VkImageAspectFlags aspects, std::vector< VkImageView > *v)
 

Private Attributes

u32 m_size = nngn::Graphics::SHADOW_MAP_INITIAL_SIZE
 
std::vector< VkImageView > m_layer_views = {}
 
std::vector< VkImageView > m_frame_views = {}
 

Constructor & Destructor Documentation

◆ ShadowMap() [1/2]

anonymous_namespace{vulkan.cpp}::ShadowMap::ShadowMap ( )
default

◆ ShadowMap() [2/2]

anonymous_namespace{vulkan.cpp}::ShadowMap::ShadowMap ( u32 size_)
inlineprotected

Member Function Documentation

◆ destroy()

void anonymous_namespace{vulkan.cpp}::ShadowMap::destroy ( VkDevice dev,
nngn::DeviceMemory * dev_mem )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ frame_views()

std::span< const VkImageView > anonymous_namespace{vulkan.cpp}::ShadowMap::frame_views ( ) const
inline
Here is the caller graph for this function:

◆ init() [1/2]

bool anonymous_namespace{vulkan.cpp}::ShadowMap::init ( VkDevice dev,
nngn::DeviceMemory * dev_mem,
VkCommandBuffer cmd,
std::size_t n_frames,
u32 n,
VkExtent3D extent )
Here is the caller graph for this function:

◆ init() [2/2]

bool anonymous_namespace{vulkan.cpp}::ShadowMap::init ( VkDevice dev,
nngn::DeviceMemory * dev_mem,
VkCommandBuffer cmd,
std::size_t n_frames,
u32 n,
VkExtent3D extent,
VkImageCreateFlags flags,
VkImageViewType view_type )
protected
Here is the call graph for this function:

◆ init_layer_views()

bool anonymous_namespace{vulkan.cpp}::ShadowMap::init_layer_views ( VkDevice dev,
u32 n,
u32 n_layers_per_view,
VkImageViewType type,
VkImageAspectFlags aspects,
std::vector< VkImageView > * v )
protected

◆ layer_views()

std::span< const VkImageView > anonymous_namespace{vulkan.cpp}::ShadowMap::layer_views ( ) const
inline
Here is the caller graph for this function:

◆ set_size()

void anonymous_namespace{vulkan.cpp}::ShadowMap::set_size ( u32 s)
inline
Here is the caller graph for this function:

◆ size()

u32 anonymous_namespace{vulkan.cpp}::ShadowMap::size ( ) const
inline
Here is the caller graph for this function:

Member Data Documentation

◆ m_frame_views

std::vector<VkImageView> anonymous_namespace{vulkan.cpp}::ShadowMap::m_frame_views = {}
private

◆ m_layer_views

std::vector<VkImageView> anonymous_namespace{vulkan.cpp}::ShadowMap::m_layer_views = {}
private

◆ m_size

u32 anonymous_namespace{vulkan.cpp}::ShadowMap::m_size = nngn::Graphics::SHADOW_MAP_INITIAL_SIZE
private

The documentation for this class was generated from the following file: