ULRE/inc/hgl/graph/VKArrayBuffer.h

40 lines
1.2 KiB
C
Raw Normal View History

2021-02-10 18:53:07 +08:00
#ifndef HGL_GRAPH_VULKAN_ARRAY_BUFFER_INCLUDE
#define HGL_GRAPH_VULKAN_ARRAY_BUFFER_INCLUDE
#include<hgl/graph/VKBuffer.h>
namespace hgl
{
namespace graph
{
/**
* GPU<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>л<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><br>
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD>ʽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ⱦ<EFBFBD><EFBFBD>instance<EFBFBD><EFBFBD>
*/
class GPUArrayBuffer
{
protected:
uint32_t item_size; ///<<3C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD>
uint32_t alloc_count; ///<<3C>ܼƷ<DCBC><C6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݸ<EFBFBD><DDB8><EFBFBD>
uint32_t count; ///<ʵ<><CAB5>ʹ<EFBFBD>õ<EFBFBD><C3B5><EFBFBD><EFBFBD>ݸ<EFBFBD><DDB8><EFBFBD>
GPUBuffer * buf_gpu; ///<ʵ<><CAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>GPU<50><55><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
uint8 * buf_cpu;
uint32_t * offset; ///<<3C><><EFBFBD><EFBFBD>ƫ<EFBFBD>Ƶ<EFBFBD>ַ
public:
/**
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* @param s <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݳ<EFBFBD><EFBFBD><EFBFBD>
* @param c <EFBFBD><EFBFBD><EFBFBD>ݸ<EFBFBD><EFBFBD><EFBFBD>
*/
GPUArrayBuffer(const uint32_t s=0,const uint32_t c=0);
virtual ~GPUArrayBuffer();
void Clear(); ///<<3C><><EFBFBD>ջ<EFBFBD><D5BB><EFBFBD><EFBFBD><EFBFBD>
};//class GPUArrayBuffer
}//namespace graph
}//namespace hgl
#endif//HGL_GRAPH_VULKAN_ARRAY_BUFFER_INCLUDE