summaryrefslogtreecommitdiff
path: root/source/modules/asura-core/graphics/gpu_buffer.h
diff options
context:
space:
mode:
authorchai <chaifix@163.com>2019-04-13 20:15:07 +0800
committerchai <chaifix@163.com>2019-04-13 20:15:07 +0800
commit866e00474be3bfe0e7dac73b720af0b9ebf7109a (patch)
tree36c44e99352e2d582b4f2f1dbd4e9e672a54f2cf /source/modules/asura-core/graphics/gpu_buffer.h
parentb5b43bac50ad58949e70bcd1a34b1e6c4765fd51 (diff)
*misc
Diffstat (limited to 'source/modules/asura-core/graphics/gpu_buffer.h')
-rw-r--r--source/modules/asura-core/graphics/gpu_buffer.h16
1 files changed, 12 insertions, 4 deletions
diff --git a/source/modules/asura-core/graphics/gpu_buffer.h b/source/modules/asura-core/graphics/gpu_buffer.h
index f2e83fc..c492cbb 100644
--- a/source/modules/asura-core/graphics/gpu_buffer.h
+++ b/source/modules/asura-core/graphics/gpu_buffer.h
@@ -33,15 +33,17 @@ namespace AsuraEngine
};
///
- /// GPU壬ֶ㻺vboebo֣ÿζڴԴϴݡ
+ /// VRAM壬ֶ㻺vboebo֣ÿζڴԴϴݡ
///
- ASURA_ABSTRACT class GPUBuffer : public AEScripting::Object
+ ASURA_ABSTRACT class GPUBuffer
{
public:
GPUBuffer(BufferType type, BufferUsage usage, BufferDataType datatype, size_t size);
virtual ~GPUBuffer();
+ static size_t GetDataTypeSize(GLenum datatype);
+
///
/// ʼ\»棬ûgpu bufferԴΪdzʼΪǸ¡
///
@@ -53,9 +55,16 @@ namespace AsuraEngine
void Bind();
void UnBind();
+ ///
+ /// bufferĴС(Byte)
+ ///
uint GetBufferSize();
-
+ ///
+ /// bufferԪظ=size/datatypesize
+ ///
+ uint GetBufferCount();
GLenum GetDataType();
+ size_t GetDataTypeSize();
private:
@@ -76,7 +85,6 @@ namespace AsuraEngine
GLenum ConvertBufferType(BufferType type);
GLenum ConvertBufferUsage(BufferUsage type);
GLenum ConvertBufferDataType(BufferDataType type);
- size_t GetDataTypeSize();
GLenum mTarget;
GLuint mBuffer;