ULRE/src/RenderDriver/VertexBufferControlDSA.cpp

39 lines
1022 B
C++
Raw Normal View History

#include"VertexBufferControl.h"
#include<GLEWCore/glew.h>
namespace hgl
{
namespace graph
{
class VertexBufferControlDSA:public VertexBufferControl
{
public:
using VertexBufferControl::VertexBufferControl;
void Set(int size, void *data,uint data_level)
{
glNamedBufferData(this->index, size, data, data_level);
}
void Change(int start, int 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