Fling Engine  0.00.1
Fling Engine is a game engine written in Vulkan
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes
Fling::DepthBuffer Class Reference

#include <DepthBuffer.h>

Public Member Functions

 DepthBuffer (LogicalDevice *t_Dev, VkSampleCountFlagBits t_SampleCount, VkExtent2D t_Extents)
 
 ~DepthBuffer ()
 
FORCEINLINE const VkImage & GetVkImage () const
 
FORCEINLINE const VkDeviceMemory & GetVkMemory () const
 
FORCEINLINE const VkImageView & GetVkImageView () const
 
FORCEINLINE const VkFormat & GetFormat () const
 
void Create ()
 Creates all VK resources. More...
 
void Cleanup ()
 Cleans up all Vulkan resources of this depth buffer. More...
 
void SetExtents (VkExtent2D t_Extents)
 

Static Public Member Functions

static VkFormat GetDepthBufferFormat ()
 

Private Member Functions

void CreateImage ()
 
void CreateImageView ()
 

Private Attributes

const LogicalDevicem_Device
 
VkImage m_Image = VK_NULL_HANDLE
 
VkDeviceMemory m_Memory = VK_NULL_HANDLE
 
VkImageView m_ImageView = VK_NULL_HANDLE
 
VkFormat m_Format {}
 
VkExtent2D m_Extents {}
 
VkSampleCountFlagBits m_SampleCount = VK_SAMPLE_COUNT_1_BIT
 

Constructor & Destructor Documentation

◆ DepthBuffer()

Fling::DepthBuffer::DepthBuffer ( LogicalDevice t_Dev,
VkSampleCountFlagBits  t_SampleCount,
VkExtent2D  t_Extents 
)
explicit

◆ ~DepthBuffer()

Fling::DepthBuffer::~DepthBuffer ( )

Member Function Documentation

◆ Cleanup()

void Fling::DepthBuffer::Cleanup ( )

Cleans up all Vulkan resources of this depth buffer.

Called automatically on destruction

◆ Create()

void Fling::DepthBuffer::Create ( )

Creates all VK resources.

Assumes that they are null. Uses swap chain extents Called on construction

See also
Cleanup

◆ CreateImage()

void Fling::DepthBuffer::CreateImage ( )
private

◆ CreateImageView()

void Fling::DepthBuffer::CreateImageView ( )
private

◆ GetDepthBufferFormat()

VkFormat Fling::DepthBuffer::GetDepthBufferFormat ( )
static

◆ GetFormat()

FORCEINLINE const VkFormat& Fling::DepthBuffer::GetFormat ( ) const
inline

◆ GetVkImage()

FORCEINLINE const VkImage& Fling::DepthBuffer::GetVkImage ( ) const
inline

◆ GetVkImageView()

FORCEINLINE const VkImageView& Fling::DepthBuffer::GetVkImageView ( ) const
inline

◆ GetVkMemory()

FORCEINLINE const VkDeviceMemory& Fling::DepthBuffer::GetVkMemory ( ) const
inline

◆ SetExtents()

void Fling::DepthBuffer::SetExtents ( VkExtent2D  t_Extents)

Field Documentation

◆ m_Device

const LogicalDevice* Fling::DepthBuffer::m_Device
private

◆ m_Extents

VkExtent2D Fling::DepthBuffer::m_Extents {}
private

◆ m_Format

VkFormat Fling::DepthBuffer::m_Format {}
private

◆ m_Image

VkImage Fling::DepthBuffer::m_Image = VK_NULL_HANDLE
private

◆ m_ImageView

VkImageView Fling::DepthBuffer::m_ImageView = VK_NULL_HANDLE
private

◆ m_Memory

VkDeviceMemory Fling::DepthBuffer::m_Memory = VK_NULL_HANDLE
private

◆ m_SampleCount

VkSampleCountFlagBits Fling::DepthBuffer::m_SampleCount = VK_SAMPLE_COUNT_1_BIT
private

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