Raven Engine v0.1
A modern 3D Game Engine
Loading...
Searching...
No Matches
Raven::VulkanUniformBuffer Class Reference

Vulkan-specific UniformBuffer implementation. More...

#include <VulkanUniformBuffer.h>

Inherits Raven::UniformBuffer.

Public Member Functions

ILLUMINE_API VulkanUniformBuffer (usize size)
 Constructs a VulkanUniformBuffer of given size.
ILLUMINE_API void SetData (void *data, usize size) override
 Uploads data to the uniform buffer.
ILLUMINE_API void Release () override
ILLUMINE_API void Clear () override
usize GetSize () const
 Returns the size of the uniform buffer.
VkBuffer GetUniformBuffer () const
 Returns the underlying Vulkan VkBuffer handle.
Public Member Functions inherited from Raven::UniformBuffer
virtual ~UniformBuffer ()=default
 Virtual destructor.
Public Member Functions inherited from Raven::RefCounted
 RefCounted ()
virtual ~RefCounted ()
void IncRefCount ()
void DecRefCount ()
u32 GetRefCount () const

Additional Inherited Members

Static Public Member Functions inherited from Raven::UniformBuffer
static Ref< UniformBufferCreate (u32 size)
 Creates a uniform buffer of the given size.

Detailed Description

Vulkan-specific UniformBuffer implementation.

Wraps a Vulkan VkBuffer and its device memory for uniform data. Supports CPU updates by mapping host-visible, coherent memory.

Constructor & Destructor Documentation

◆ VulkanUniformBuffer()

Raven::VulkanUniformBuffer::VulkanUniformBuffer ( usize size)

Constructs a VulkanUniformBuffer of given size.

Allocates a Vulkan buffer with uniform buffer usage and maps memory for CPU writes.

Parameters
sizeSize in bytes of the uniform buffer.

Member Function Documentation

◆ Clear()

void Raven::VulkanUniformBuffer::Clear ( )
overridevirtual

Implements Raven::UniformBuffer.

◆ GetSize()

usize Raven::VulkanUniformBuffer::GetSize ( ) const
inline

Returns the size of the uniform buffer.

Returns
Size in bytes.

◆ GetUniformBuffer()

VkBuffer Raven::VulkanUniformBuffer::GetUniformBuffer ( ) const
inline

Returns the underlying Vulkan VkBuffer handle.

Returns
Vulkan VkBuffer used for uniform data.

◆ Release()

void Raven::VulkanUniformBuffer::Release ( )
overridevirtual

Implements Raven::UniformBuffer.

◆ SetData()

void Raven::VulkanUniformBuffer::SetData ( void * data,
usize size )
overridevirtual

Uploads data to the uniform buffer.

Parameters
dataPointer to the data to copy.
sizeSize in bytes of the data to copy.

Implements Raven::UniformBuffer.


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