📄 aglext_arb_vertex_buffer_object.cpp
字号:
GLboolean use_ARB_vertex_buffer_object = GL_FALSE;
// Functions pointers for ARB_vertex_buffer_object Extension:
PFNGLBINDBUFFERARBPROC glBindBufferARB = NULL;
PFNGLDELETEBUFFERSARBPROC glDeleteBuffersARB = NULL;
PFNGLGENBUFFERSARBPROC glGenBuffersARB = NULL;
PFNGLISBUFFERARBPROC glIsBufferARB = NULL;
PFNGLBUFFERDATAARBPROC glBufferDataARB = NULL;
PFNGLBUFFERSUBDATAARBPROC glBufferSubDataARB = NULL;
PFNGLGETBUFFERSUBDATAARBPROC glGetBufferSubDataARB = NULL;
PFNGLMAPBUFFERARBPROC glMapBufferARB = NULL;
PFNGLUNMAPBUFFERARBPROC glUnmapBufferARB = NULL;
PFNGLGETBUFFERPARAMETERIVARBPROC glGetBufferParameterivARB = NULL;
PFNGLGETBUFFERPOINTERVARBPROC glGetBufferPointervARB = NULL;
bool init_ARB_vertex_buffer_object(void)
{
int error = 0;
error |= aLoadExtension(PFNGLBINDBUFFERARBPROC, glBindBufferARB);
error |= aLoadExtension(PFNGLDELETEBUFFERSARBPROC, glDeleteBuffersARB);
error |= aLoadExtension(PFNGLGENBUFFERSARBPROC, glGenBuffersARB);
error |= aLoadExtension(PFNGLISBUFFERARBPROC, glIsBufferARB);
error |= aLoadExtension(PFNGLBUFFERDATAARBPROC, glBufferDataARB);
error |= aLoadExtension(PFNGLBUFFERSUBDATAARBPROC, glBufferSubDataARB);
error |= aLoadExtension(PFNGLGETBUFFERSUBDATAARBPROC, glGetBufferSubDataARB);
error |= aLoadExtension(PFNGLMAPBUFFERARBPROC, glMapBufferARB);
error |= aLoadExtension(PFNGLUNMAPBUFFERARBPROC, glUnmapBufferARB);
error |= aLoadExtension(PFNGLGETBUFFERPARAMETERIVARBPROC, glGetBufferParameterivARB);
error |= aLoadExtension(PFNGLGETBUFFERPOINTERVARBPROC, glGetBufferPointervARB);
if (error) return false;
return true;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -