glGetBufferPointerv — return the pointer to a mapped buffer object's data store

C Specification

void glGetBufferPointerv(GLenum target,
 GLenum pname,
 void ** params);



Specifies the target buffer object. The symbolic constant must be GL_ARRAY_BUFFER, GL_ELEMENT_ARRAY_BUFFER, GL_PIXEL_PACK_BUFFER, or GL_PIXEL_UNPACK_BUFFER.


Specifies the pointer to be returned. The symbolic constant must be GL_BUFFER_MAP_POINTER.


Returns the pointer value specified by pname.


glGetBufferPointerv returns pointer information. pname is a symbolic constant indicating the pointer to be returned, which must be GL_BUFFER_MAP_POINTER, the pointer to which the buffer object's data store is mapped. If the data store is not currently mapped, NULL is returned. params is a pointer to a location in which to place the returned pointer value.


If an error is generated, no change is made to the contents of params.

glGetBufferPointerv is available only if the GL version is 1.5 or greater.

Targets GL_PIXEL_PACK_BUFFER and GL_PIXEL_UNPACK_BUFFER are available only if the GL version is 2.1 or greater.

The initial value for the pointer is NULL.


GL_INVALID_ENUM is generated if target or pname is not an accepted value.

GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target.

GL_INVALID_OPERATION is generated if glGetBufferPointerv is executed between the execution of glBegin and the corresponding execution of glEnd.

See Also

glBindBuffer, glMapBuffer


Copyright © 2005 Addison-Wesley. This material may be distributed subject to the terms and conditions set forth in the Open Publication License, v 1.0, 8 June 1999.