CeresEngine 0.2.0
A game development framework
Loading...
Searching...
No Matches
GPUBufferObject.hpp File Reference

Go to the source code of this file.

Classes

class  CeresEngine::GPUBufferObject
 
class  CeresEngine::GPUVertexBuffer
 
class  CeresEngine::GPUIndexBuffer
 
class  CeresEngine::GPUUniformBuffer
 
class  CeresEngine::GPUStorageBuffer
 
class  CeresEngine::GPUIndirectBuffer
 
class  CeresEngine::GPUStagingBuffer
 A special buffer type that can be used a staging buffer to upload and download data to the GPU. More...
 
class  CeresEngine::GPUBindlessBuffer
 A GPU bindless buffer. More...
 
class  CeresEngine::GPUDynamicBuffer< P, T, BaseAlignment >
 
class  CeresEngine::GPUDynamicBuffer< P, T[], BaseAlignment >
 
class  CeresEngine::GPUDynamicBuffer< P, T[], 0 >
 
class  CeresEngine::GPUDynamicBuffer< P, T[N], BaseAlignment >
 
class  CeresEngine::GPUBufferPool< B >
 A template class that automatically manages a buffer pool. More...
 
class  CeresEngine::TGPUBufferPool< T, B >
 A template class that automatically manages a uniform buffer pool. More...
 

Namespaces

namespace  CeresEngine
 

Typedefs

template<typename T >
using CeresEngine::GPUDynamicVertexBuffer = GPUDynamicBuffer< GPUVertexBuffer, T[]>
 A GPUDynamicBuffer specialization that creates a dynamic GPUVertexBuffer.
 
template<typename T >
using CeresEngine::GPUDynamicStridedVertexBuffer = GPUDynamicBuffer< GPUVertexBuffer, T[], 0 >
 A GPUDynamicBuffer specialization that creates a dynamic GPUVertexBuffer.
 
template<typename T >
using CeresEngine::GPUDynamicIndexBuffer = GPUDynamicBuffer< GPUIndexBuffer, T[]>
 A GPUDynamicBuffer specialization that creates a dynamic GPUIndexBuffer.
 
template<typename T >
using CeresEngine::GPUDynamicStridedIndexBuffer = GPUDynamicBuffer< GPUIndexBuffer, T[], 0 >
 A GPUDynamicBuffer specialization that creates a dynamic GPUIndexBuffer.
 
template<typename T >
using CeresEngine::GPUDynamicUniformBuffer = GPUDynamicBuffer< GPUUniformBuffer, T >
 A GPUDynamicBuffer specialization that creates a dynamic GPUUniformBuffer.
 
template<typename T , std::size_t BaseAlignment = sizeof(T)>
using CeresEngine::GPUDynamicUniformBufferArray = GPUDynamicBuffer< GPUUniformBuffer, T[], BaseAlignment >
 A GPUDynamicBuffer specialization that creates a dynamic GPUUniformBuffer.
 
template<typename T >
using CeresEngine::GPUDynamicStridedUniformBufferArray = GPUDynamicUniformBufferArray< T, 0 >
 A GPUDynamicBuffer specialization that creates a dynamic GPUUniformBuffer.
 
template<typename T >
using CeresEngine::GPUDynamicStorageBuffer = GPUDynamicBuffer< GPUStorageBuffer, T >
 A GPUDynamicBuffer specialization that creates a dynamic GPUStorageBuffer.
 
template<typename T , std::size_t BaseAlignment = sizeof(T)>
using CeresEngine::GPUDynamicStorageBufferArray = GPUDynamicBuffer< GPUStorageBuffer, T[], BaseAlignment >
 A GPUDynamicBuffer specialization that creates a dynamic GPUStorageBuffer.
 
template<typename T >
using CeresEngine::GPUDynamicStridedStorageBufferArray = GPUDynamicStorageBufferArray< T, 0 >
 A GPUDynamicBuffer specialization that creates a dynamic GPUStorageBuffer.
 
template<typename T >
using CeresEngine::GPUDynamicIndirectBuffer = GPUDynamicBuffer< GPUIndirectBuffer, T >
 A GPUDynamicBuffer specialization that creates a dynamic GPUIndirectBuffer.
 
template<typename T , std::size_t BaseAlignment = sizeof(T)>
using CeresEngine::GPUDynamicIndirectBufferArray = GPUDynamicBuffer< GPUIndirectBuffer, T[], BaseAlignment >
 A GPUDynamicBuffer specialization that creates a dynamic GPUIndirectBuffer.
 
template<typename T >
using CeresEngine::GPUDynamicStridedIndirectBufferArray = GPUDynamicIndirectBufferArray< T, 0 >
 A GPUDynamicBuffer specialization that creates a dynamic GPUIndirectBuffer.
 
template<typename T >
using CeresEngine::GPUDynamicBindlessBuffer = GPUDynamicBuffer< GPUBindlessBuffer, T >
 A GPUDynamicBuffer specialization that creates a dynamic GPUBindlessBuffer.
 
template<typename T , std::size_t BaseAlignment = sizeof(T)>
using CeresEngine::GPUDynamicBindlessBufferArray = GPUDynamicBuffer< GPUBindlessBuffer, T[], BaseAlignment >
 A GPUDynamicBuffer specialization that creates a dynamic GPUBindlessBuffer.
 
template<typename T >
using CeresEngine::GPUDynamicStridedBindlessBufferArray = GPUDynamicBindlessBufferArray< T, 0 >
 A GPUDynamicBuffer specialization that creates a dynamic GPUBindlessBuffer.
 
using CeresEngine::GPUUniformBufferPool = GPUBufferPool< GPUDynamicUniformBuffer >
 A dynamic uniform buffer pool.
 
using CeresEngine::GPUStorageBufferPool = GPUBufferPool< GPUDynamicStorageBuffer >
 A dynamic storage buffer pool.
 
using CeresEngine::GPUBindlessBufferPool = GPUBufferPool< GPUDynamicBindlessBuffer >
 A dynamic bindless buffer pool.
 
template<typename T >
using CeresEngine::TGPUUniformBufferPool = TGPUBufferPool< T, GPUDynamicUniformBuffer >
 A dynamic uniform buffer pool.
 
template<typename T >
using CeresEngine::TGPUStorageBufferPool = TGPUBufferPool< T, GPUDynamicStorageBuffer >
 A dynamic storage buffer pool.
 
template<typename T >
using CeresEngine::TGPUIndirectBufferPool = TGPUBufferPool< T, GPUDynamicIndirectBuffer >
 A dynamic indirect draw buffer pool.
 
template<typename T >
using CeresEngine::TGPUBindlessBufferPool = TGPUBufferPool< T, GPUDynamicBindlessBuffer >
 A dynamic bindless buffer pool.
 
using CeresEngine::GPUIndirectBufferPool = TGPUIndirectBufferPool< GPUDrawIndirectCommand >
 Generates a hash for the provided type.