void Buffer::set_usage(BufferUsage u)
{
+ // TODO OpenGL ES 2.0 doesn't support read or copy usages
usage = u;
}
}
else if(ARB_direct_state_access)
return glMapNamedBuffer(id, access);
- else
+ else if(OES_mapbuffer)
{
BindRestore _bind(this, type);
return glMapBuffer(type, access);
}
+ else
+ throw invalid_operation("Buffer::map");
}
bool Buffer::unmap()
{
+ // TODO check if it's mapped
if(ARB_direct_state_access)
return glUnmapNamedBuffer(id);
- else
+ else if(OES_mapbuffer)
{
BindRestore _bind(this, type);
return glUnmapBuffer(type);
}
+ else
+ return true;
}
void Buffer::bind_to(BufferType t) const