ULRE/src/RenderDriver/VertexBufferControlDSA.cpp

39 lines
1.0 KiB
C++
Raw Normal View History

#include"VertexBufferControl.h"
#include<GLEWCore/glew.h>
namespace hgl
{
namespace graph
{
class VertexBufferControlDSA:public VertexBufferControl
{
public:
using VertexBufferControl::VertexBufferControl;
2018-12-07 15:32:01 +08:00
void Set(GLsizei size, void *data,GLenum data_usage)
{
2018-12-07 15:32:01 +08:00
glNamedBufferData(this->index, size, data, data_usage);
}
2018-12-07 15:32:01 +08:00
void Change(GLintptr start, GLsizei size, void *data)
{
glNamedBufferSubData(this->index, start, size, data);
}
};//class VertexBufferControlDSA
VertexBufferControl *CreateVertexBufferControlDSA(uint type)
{
uint index;
glCreateBuffers(1,&index);
return(new VertexBufferControlDSA(type,index));
}
void DeleteVertexBufferControlDSA(VertexBufferControl *vbc)
{
SAFE_CLEAR(vbc);
}
}//namespace graph
}//namespace hgl