Castor3D 0.16.0
Multiplatform 3D engine
|
Un pool de buffer GPU, utilisant un allocateur pour allouer des sous-tampons. Plus de détails...
#include <GpuBuffer.hpp>
Fonctions membres publiques | |
GpuBaseBufferT (RenderDevice const &device, VkBufferUsageFlags usage, VkMemoryPropertyFlags memoryFlags, castor::String const &debugName, ashes::QueueShare sharingMode, AllocatorT allocator) | |
Constructeur. | |
bool | hasAvailable (VkDeviceSize size) const noexcept |
MemChunk | allocate (VkDeviceSize size) noexcept |
Alloue une zone mémoire pour un CPU buffer. | |
void | deallocate (MemChunk const &mem) noexcept |
Désalloue de la mémoire. | |
size_t | getMinAlignment () const noexcept |
ashes::BufferBase const & | getBuffer () const noexcept |
ashes::BufferBase & | getBuffer () noexcept |
Un pool de buffer GPU, utilisant un allocateur pour allouer des sous-tampons.
castor3d::GpuBaseBufferT< AllocatorT >::GpuBaseBufferT | ( | RenderDevice const & | device, |
VkBufferUsageFlags | usage, | ||
VkMemoryPropertyFlags | memoryFlags, | ||
castor::String const & | debugName, | ||
ashes::QueueShare | sharingMode, | ||
AllocatorT | allocator ) |
Constructeur.
[in] | device | Le device sur lequel le stockage est alloué. |
[in] | usage | Les cibles du tampon. |
[in] | memoryFlags | Les propriétés mémoire du tampon. |
[in] | debugName | Le nom debug. |
[in] | sharingMode | Le mode de partage. |
[in] | allocator | L'allocateur. |
|
noexcept |
Alloue une zone mémoire pour un CPU buffer.
[in] | size | La taille requise pour la mémoire. |
|
noexcept |
Désalloue de la mémoire.
[in] | mem | La zone mémoire. |
|
inlinenoexcept |
Référencé par castor3d::ObjectBufferOffset::GpuBufferChunk::getBuffer().
|
inlinenoexcept |
|
noexcept |
|
noexcept |
[in] | size | La taille requise pour la mémoire. |
true
s'il y a assez de mémoire restante pour la taille donnée.