|
| UniformBufferT (RenderSystem const &renderSystem, VkDeviceSize count, VkBufferUsageFlags usage, VkMemoryPropertyFlags flags, castor::String debugName, ashes::QueueShare sharingMode={}) |
| Constructeur.
|
|
void | upload (ashes::BufferBase const &stagingBuffer, ashes::Queue const &queue, ashes::CommandPool const &commandPool, uint32_t offset, VkPipelineStageFlags flags) const |
| Transfère des données au tampon GPU à partir de la RAM.
|
|
void | upload (ashes::BufferBase const &stagingBuffer, ashes::CommandBuffer const &commandBuffer, uint32_t offset, VkPipelineStageFlags flags) const |
| Transfère des données au tampon GPU à partir de la RAM.
|
|
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 |
| Transfère des données au tampon GPU à partir de la RAM.
|
|
void | upload (ashes::BufferBase const &stagingBuffer, ashes::CommandBuffer const &commandBuffer, uint32_t offset, VkPipelineStageFlags flags, FramePassTimer const &timer, uint32_t index) const |
| Transfère des données au tampon GPU à partir de la RAM.
|
|
void | upload (VkDeviceSize offset=0u, VkDeviceSize range=1u) const |
| Met en VRAM les données du tampon.
|
|
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) |
| Transfère des données du tampon GPU vers la RAM.
|
|
DataT const & | getData (VkDeviceSize index=0) const |
|
DataT & | getData (VkDeviceSize index=0) |
|
castor::Vector< DataT > const & | getDatas () const |
|
castor::Vector< DataT > & | getDatas () |
|
C3D_API | UniformBufferBase (RenderSystem const &renderSystem, VkDeviceSize elemCount, VkDeviceSize elemSize, VkBufferUsageFlags usage, VkMemoryPropertyFlags flags, castor::String debugName, ashes::QueueShare sharingMode={}) |
| Constructeur.
|
|
virtual C3D_API | ~UniformBufferBase () noexcept=default |
| Destructeur.
|
|
C3D_API uint32_t | initialise (RenderDevice const &device) |
| Initialise le tampon GPU.
|
|
C3D_API uint32_t | initialise (RenderDevice const &device, ashes::QueueShare sharingMode) |
| Initialise le tampon GPU.
|
|
C3D_API void | cleanup () noexcept |
| Nettoie le tampon GPU.
|
|
C3D_API bool | hasAvailable () const noexcept |
|
C3D_API uint32_t | allocate () noexcept |
| Alloue une zone mémoire pour un CPU buffer.
|
|
C3D_API void | deallocate (uint32_t offset) |
| Désalloue de la mémoire.
|
|
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 |
| Transfère des données au tampon GPU à partir de la RAM.
|
|
void | upload (ashes::BufferBase const &stagingBuffer, ashes::Queue const &queue, ashes::CommandPool const &commandPool, ashes::ByteArray const &data, uint32_t offset, VkPipelineStageFlags flags) const |
| Transfère des données au tampon GPU à partir de la RAM.
|
|
C3D_API void | upload (ashes::BufferBase const &stagingBuffer, ashes::CommandBuffer const &commandBuffer, const void *data, size_t size, uint32_t offset, VkPipelineStageFlags flags) const |
| Transfère des données au tampon GPU à partir de la RAM.
|
|
void | upload (ashes::BufferBase const &stagingBuffer, ashes::CommandBuffer const &commandBuffer, ashes::ByteArray const &data, uint32_t offset, VkPipelineStageFlags flags) const |
| Transfère des données au tampon GPU à partir de la RAM.
|
|
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 &timer) const |
| Transfère des données au tampon GPU à partir de la RAM.
|
|
void | upload (ashes::BufferBase const &stagingBuffer, ashes::Queue const &queue, ashes::CommandPool const &commandPool, ashes::ByteArray const &data, uint32_t offset, VkPipelineStageFlags flags, FramePassTimer &timer) const |
| Transfère des données au tampon GPU à partir de la RAM.
|
|
C3D_API void | upload (ashes::BufferBase const &stagingBuffer, ashes::CommandBuffer const &commandBuffer, const void *data, size_t size, uint32_t offset, VkPipelineStageFlags flags, FramePassTimer &timer) const |
| Transfère des données au tampon GPU à partir de la RAM.
|
|
void | upload (ashes::BufferBase const &stagingBuffer, ashes::CommandBuffer const &commandBuffer, ashes::ByteArray const &data, uint32_t offset, VkPipelineStageFlags flags, FramePassTimer &timer) const |
| Transfère des données au tampon GPU à partir de la RAM.
|
|
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 &timer) const |
| Transfère des données du tampon GPU vers la RAM.
|
|
void | download (ashes::BufferBase const &stagingBuffer, ashes::Queue const &queue, ashes::CommandPool const &commandPool, ashes::ByteArray &data, uint32_t offset, VkPipelineStageFlags flags, FramePassTimer &timer) const |
| Transfère des données du tampon GPU vers la RAM.
|
|
bool | hasBuffer () const |
|
ashes::UniformBuffer const & | getBuffer () const |
|
ashes::UniformBuffer & | getBuffer () |
|
uint32_t | getElementSize () const |
|
uint32_t | getAlignedSize (uint32_t size) const |
| Récupère la taille alignée d'un élément.
|
|
uint32_t | getAlignedSize () const |
|
template<typename DataT>
class castor3d::UniformBufferT< DataT >
Un tampon typé d'uniformes, puovant contenir de multiples sous-tampons.