aglext_arb_vertex_buffer_object.cpp

来自「GLSL tutorial with sourcecode」· C++ 代码 · 共 41 行

CPP
41
字号
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 + =
减小字号Ctrl + -
显示快捷键?