|
| UniformBufferT (RenderSystem const &renderSystem, VkDeviceSize count, VkBufferUsageFlags usage, VkMemoryPropertyFlags flags, castor::String debugName, ashes::QueueShare sharingMode={}) |
| Constructor. More...
|
|
void | upload (ashes::BufferBase const &stagingBuffer, ashes::Queue const &queue, ashes::CommandPool const &commandPool, uint32_t offset, VkPipelineStageFlags flags) const |
| Transfers data to the GPU buffer from RAM. More...
|
|
void | upload (ashes::BufferBase const &stagingBuffer, ashes::CommandBuffer const &commandBuffer, uint32_t offset, VkPipelineStageFlags flags) const |
| Transfers data to the GPU buffer from RAM. More...
|
|
void | upload (ashes::BufferBase const &stagingBuffer, ashes::Queue const &queue, ashes::CommandPool const &commandPool, uint32_t offset, VkPipelineStageFlags flags, FramePassTimer const &timer, uint32_t index) const |
| Transfers data to the GPU buffer from RAM. More...
|
|
void | upload (ashes::BufferBase const &stagingBuffer, ashes::CommandBuffer const &commandBuffer, uint32_t offset, VkPipelineStageFlags flags, FramePassTimer const &timer, uint32_t index) const |
| Transfers data to the GPU buffer from RAM. More...
|
|
void | upload (VkDeviceSize offset=0u, VkDeviceSize range=1u) const |
| Uploads the buffer data to VRAM. More...
|
|
void | download (ashes::BufferBase const &stagingBuffer, ashes::Queue const &queue, ashes::CommandPool const &commandPool, uint32_t offset, VkPipelineStageFlags flags, FramePassTimer const &timer, uint32_t index) |
| Transfers data from the GPU buffer to RAM. More...
|
|
DataT const & | getData (VkDeviceSize index=0) const |
|
DataT & | getData (VkDeviceSize index=0) |
|
std::vector< DataT > const & | getDatas () const |
|
std::vector< DataT > & | getDatas () |
|
C3D_API | UniformBufferBase (RenderSystem const &renderSystem, VkDeviceSize elemCount, VkDeviceSize elemSize, VkBufferUsageFlags usage, VkMemoryPropertyFlags flags, castor::String debugName, ashes::QueueShare sharingMode={}) |
| Constructor. More...
|
|
virtual C3D_API | ~UniformBufferBase ()=default |
| Destructor. More...
|
|
C3D_API uint32_t | initialise (RenderDevice const &device) |
| Initialises the GPU buffer. More...
|
|
C3D_API uint32_t | initialise (RenderDevice const &device, ashes::QueueShare sharingMode) |
| Initialises the GPU buffer. More...
|
|
C3D_API void | cleanup () |
| Cleans up the GPU buffer. More...
|
|
C3D_API bool | hasAvailable () const |
|
C3D_API uint32_t | allocate () |
| Allocates a memory chunk for a CPU buffer. More...
|
|
C3D_API void | deallocate (uint32_t offset) |
| Deallocates memory. More...
|
|
C3D_API void | upload (ashes::BufferBase const &stagingBuffer, ashes::Queue const &queue, ashes::CommandPool const &commandPool, const void *data, size_t size, uint32_t offset, VkPipelineStageFlags flags) const |
| Transfers data to the GPU buffer from RAM. More...
|
|
void | upload (ashes::BufferBase const &stagingBuffer, ashes::Queue const &queue, ashes::CommandPool const &commandPool, ashes::ByteArray const &data, uint32_t offset, VkPipelineStageFlags flags) const |
| Transfers data to the GPU buffer from RAM. More...
|
|
C3D_API void | upload (ashes::BufferBase const &stagingBuffer, ashes::CommandBuffer const &commandBuffer, const void *data, size_t size, uint32_t offset, VkPipelineStageFlags flags) const |
| Transfers data to the GPU buffer from RAM. More...
|
|
void | upload (ashes::BufferBase const &stagingBuffer, ashes::CommandBuffer const &commandBuffer, ashes::ByteArray const &data, uint32_t offset, VkPipelineStageFlags flags) const |
| Transfers data to the GPU buffer from RAM. More...
|
|
C3D_API void | upload (ashes::BufferBase const &stagingBuffer, ashes::Queue const &queue, ashes::CommandPool const &commandPool, const void *data, size_t size, uint32_t offset, VkPipelineStageFlags flags, FramePassTimer const &timer, uint32_t index) const |
| Transfers data to the GPU buffer from RAM. More...
|
|
void | upload (ashes::BufferBase const &stagingBuffer, ashes::Queue const &queue, ashes::CommandPool const &commandPool, ashes::ByteArray const &data, uint32_t offset, VkPipelineStageFlags flags, FramePassTimer const &timer, uint32_t index) const |
| Transfers data to the GPU buffer from RAM. More...
|
|
C3D_API void | upload (ashes::BufferBase const &stagingBuffer, ashes::CommandBuffer const &commandBuffer, const void *data, size_t size, uint32_t offset, VkPipelineStageFlags flags, FramePassTimer const &timer, uint32_t index) const |
| Transfers data to the GPU buffer from RAM. More...
|
|
void | upload (ashes::BufferBase const &stagingBuffer, ashes::CommandBuffer const &commandBuffer, ashes::ByteArray const &data, uint32_t offset, VkPipelineStageFlags flags, FramePassTimer const &timer, uint32_t index) const |
| Transfers data to the GPU buffer from RAM. More...
|
|
C3D_API void | download (ashes::BufferBase const &stagingBuffer, ashes::Queue const &queue, ashes::CommandPool const &commandPool, void *data, size_t size, uint32_t offset, VkPipelineStageFlags flags, FramePassTimer const &timer, uint32_t index) const |
| Transfers data from the GPU buffer to RAM. More...
|
|
void | download (ashes::BufferBase const &stagingBuffer, ashes::Queue const &queue, ashes::CommandPool const &commandPool, ashes::ByteArray &data, uint32_t offset, VkPipelineStageFlags flags, FramePassTimer const &timer, uint32_t index) const |
| Transfers data from the GPU buffer to RAM. More...
|
|
bool | hasBuffer () const |
|
ashes::UniformBuffer const & | getBuffer () const |
|
| operator ashes::UniformBuffer const & () const |
|
ashes::UniformBuffer & | getBuffer () |
|
| operator ashes::UniformBuffer & () |
|
uint32_t | getElementSize () const |
|
uint32_t | getAlignedSize (uint32_t size) const |
| Retrieves the aligned size for an element. More...
|
|
uint32_t | getAlignedSize () const |
|
template<typename DataT>
class castor3d::UniformBufferT< DataT >
A uniform typed buffer, than can contain multiple sub-buffers.