Vulkan backend implementation of a vertex buffer. More...
#include <VulkanVertexBuffer.h>
Inherits Raven::VertexBuffer.
Public Member Functions | |
| ILLUMINE_API | VulkanVertexBuffer (void *data, u32 size) |
| Constructs a VulkanVertexBuffer with provided vertex data. | |
| ILLUMINE_API | VulkanVertexBuffer (u32 size) |
| ILLUMINE_API | ~VulkanVertexBuffer ()=default |
| Destructor cleans up Vulkan buffer and memory. | |
| ILLUMINE_API void | Release () override |
| ILLUMINE_API void | SetData (const void *data, u32 size) override |
| VkBuffer | GetVulkanBuffer () const |
| Returns the underlying Vulkan VkBuffer handle. | |
| Public Member Functions inherited from Raven::VertexBuffer | |
| virtual | ~VertexBuffer ()=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::VertexBuffer | |
| static Ref< VertexBuffer > | Create (void *data, u32 size) |
| Creates an immutable vertex buffer with the given data. | |
| static Ref< VertexBuffer > | CreateDynamic (u32 size) |
| Creates a mutable vertex buffer with the given data. | |
Vulkan backend implementation of a vertex buffer.
Manages a Vulkan VkBuffer and its associated device memory to store vertex data on the GPU. Data is initially copied via a staging buffer before being transferred to device-local memory.
| Raven::VulkanVertexBuffer::VulkanVertexBuffer | ( | void * | data, |
| u32 | size ) |
Constructs a VulkanVertexBuffer with provided vertex data.
Creates a staging buffer to upload vertex data, then transfers it to a device-local Vulkan buffer.
| data | Pointer to vertex data to upload. |
| size | Size in bytes of the vertex data. |
| Raven::VulkanVertexBuffer::VulkanVertexBuffer | ( | u32 | size | ) |
|
default |
Destructor cleans up Vulkan buffer and memory.
|
inline |
Returns the underlying Vulkan VkBuffer handle.
|
overridevirtual |
Implements Raven::VertexBuffer.
|
overridevirtual |
Implements Raven::VertexBuffer.