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)
 
 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)
 
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
 
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)
 
 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/4]

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

◆ ShadowMap() [2/4]

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

◆ ShadowMap() [3/4]

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

◆ ShadowMap() [4/4]

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

Member Function Documentation

◆ destroy() [1/2]

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

◆ destroy() [2/2]

void anonymous_namespace{vulkan.cpp}::ShadowMap::destroy ( VkDevice  dev,
nngn::DeviceMemory dev_mem 
)

◆ frame_views() [1/2]

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

◆ frame_views() [2/2]

std::span< const VkImageView > anonymous_namespace{vulkan.cpp}::ShadowMap::frame_views ( ) const
inline

◆ init() [1/4]

bool anonymous_namespace{vulkan.cpp}::ShadowMap::init ( VkDevice  dev,
nngn::DeviceMemory dev_mem,
VkCommandBuffer  cmd,
std::size_t  n_frames,
u32  n,
VkExtent3D  extent 
)

◆ init() [2/4]

bool anonymous_namespace{vulkan.cpp}::ShadowMap::init ( VkDevice  dev,
nngn::DeviceMemory dev_mem,
VkCommandBuffer  cmd,
std::size_t  n_frames,
u32  n,
VkExtent3D  extent 
)

◆ init() [3/4]

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

◆ init() [4/4]

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

◆ init_layer_views() [1/2]

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

◆ init_layer_views() [2/2]

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() [1/2]

std::span< const VkImageView > anonymous_namespace{vulkan.cpp}::ShadowMap::layer_views ( ) const
inline

◆ layer_views() [2/2]

std::span< const VkImageView > anonymous_namespace{vulkan.cpp}::ShadowMap::layer_views ( ) const
inline

◆ set_size() [1/2]

void anonymous_namespace{vulkan.cpp}::ShadowMap::set_size ( u32  s)
inline

◆ set_size() [2/2]

void anonymous_namespace{vulkan.cpp}::ShadowMap::set_size ( u32  s)
inline

◆ size() [1/2]

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

◆ size() [2/2]

u32 anonymous_namespace{vulkan.cpp}::ShadowMap::size ( ) const
inline

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 files: