vOOlkan
An object oriented approach to Vulkan
|
#include <IndexBuffer.h>
Public Member Functions | |
IndexBuffer (const LogicalDevice &virtualGpu, const PhysicalDevice &realGpu, size_t size) | |
template<typename... C, template< typename... > class... M> requires (std::same_as<M<C...>, Objects::Model<C...>> && ...) | |
void | fillBuffer (const M< C... > &... models) |
unsigned int | getIndexesCount () const |
unsigned int | getModelOffset (unsigned int i) const |
unsigned int | getModelIndexesCount (unsigned int i) const |
unsigned int | getModelsCount () const |
![]() | |
template<std::same_as< VkMemoryPropertyFlagBits >... P> | |
Buffer (const LogicalDevice &virtualGpu, const PhysicalDevice &realGpu, size_t size, int usage, P... requiredMemoryProperties) | |
Buffer (const Buffer &)=delete | |
Buffer & | operator= (const Buffer &)=delete |
Buffer (Buffer &&)=default | |
Buffer & | operator= (Buffer &&)=default |
~Buffer () | |
const VkBuffer & | operator+ () const |
VkDeviceMemory & | getBufferMemory () |
Additional Inherited Members | |
![]() | |
template<std::same_as< VkMemoryPropertyFlagBits >... P> | |
static uint32_t | findSuitableMemoryIndex (const PhysicalDevice &realGpu, uint32_t suitableTypesBitmask, P... requiredMemoryProperties) |
![]() | |
void | createBuffer (const LogicalDevice &virtualGpu, size_t size, int usage) |
void | allocateMemory (uint32_t memoryIndex, VkDeviceSize sizeToAllocate) |
![]() | |
VkBuffer | buffer |
VkDeviceMemory | bufferMemory |
const LogicalDevice & | virtualGpu |
const size_t | size |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |