OpenSceneGraph
Classes | Namespaces | Macros | Typedefs | Functions
BufferObject File Reference
#include <osg/GL>
#include <osg/GLExtensions>
#include <osg/Object>
#include <osg/buffered_value>
#include <osg/FrameStamp>
#include <osg/GLObjects>
#include <iosfwd>
#include <list>
#include <map>

Classes

class  osg::BufferObjectProfile
 
class  osg::GLBufferObject
 
struct  osg::GLBufferObject::BufferEntry
 
class  osg::GLBufferObjectSet
 
class  osg::GLBufferObjectManager
 
class  osg::BufferObject
 
class  osg::BufferData
 
struct  osg::BufferData::ModifiedCallback
 
class  osg::VertexBufferObject
 
class  osg::ElementBufferObject
 
class  osg::DrawIndirectBufferObject
 
class  osg::PixelBufferObject
 
class  osg::PixelDataBufferObject
 This object represent a general class of pixel buffer objects, which are capable of allocating buffer object (memory) on the GPU. More...
 
class  osg::UniformBufferObject
 
class  osg::AtomicCounterBufferObject
 
class  osg::ShaderStorageBufferObject
 

Namespaces

 osg
 The core osg library provides the basic scene graph classes such as Nodes, State and Drawables, and maths and general helper classes.
 

Macros

#define OSG_BUFFEROBJECT   1
 
#define GL_ARRAY_BUFFER_ARB   0x8892
 
#define GL_ELEMENT_ARRAY_BUFFER_ARB   0x8893
 
#define GL_ARRAY_BUFFER_BINDING_ARB   0x8894
 
#define GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB   0x8895
 
#define GL_VERTEX_ARRAY_BUFFER_BINDING_ARB   0x8896
 
#define GL_NORMAL_ARRAY_BUFFER_BINDING_ARB   0x8897
 
#define GL_COLOR_ARRAY_BUFFER_BINDING_ARB   0x8898
 
#define GL_INDEX_ARRAY_BUFFER_BINDING_ARB   0x8899
 
#define GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB   0x889A
 
#define GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB   0x889B
 
#define GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB   0x889C
 
#define GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB   0x889D
 
#define GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB   0x889E
 
#define GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB   0x889F
 
#define GL_STREAM_DRAW_ARB   0x88E0
 
#define GL_STREAM_READ_ARB   0x88E1
 
#define GL_STREAM_COPY_ARB   0x88E2
 
#define GL_STATIC_DRAW_ARB   0x88E4
 
#define GL_STATIC_READ_ARB   0x88E5
 
#define GL_STATIC_COPY_ARB   0x88E6
 
#define GL_DYNAMIC_DRAW_ARB   0x88E8
 
#define GL_DYNAMIC_READ_ARB   0x88E9
 
#define GL_DYNAMIC_COPY_ARB   0x88EA
 
#define GL_READ_ONLY_ARB   0x88B8
 
#define GL_WRITE_ONLY_ARB   0x88B9
 
#define GL_READ_WRITE_ARB   0x88BA
 
#define GL_BUFFER_SIZE_ARB   0x8764
 
#define GL_BUFFER_USAGE_ARB   0x8765
 
#define GL_BUFFER_ACCESS_ARB   0x88BB
 
#define GL_BUFFER_MAPPED_ARB   0x88BC
 
#define GL_BUFFER_MAP_POINTER_ARB   0x88BD
 
#define GL_STREAM_DRAW   0x88E0
 
#define GL_STREAM_READ   0x88E1
 
#define GL_STREAM_COPY   0x88E2
 
#define GL_STATIC_DRAW   0x88E4
 
#define GL_STATIC_READ   0x88E5
 
#define GL_STATIC_COPY   0x88E6
 
#define GL_DYNAMIC_DRAW   0x88E8
 
#define GL_DYNAMIC_READ   0x88E9
 
#define GL_DYNAMIC_COPY   0x88EA
 
#define GL_PIXEL_PACK_BUFFER   0x88EB
 
#define GL_PIXEL_UNPACK_BUFFER   0x88EC
 
#define GL_PIXEL_PACK_BUFFER_BINDING   0x88ED
 
#define GL_PIXEL_UNPACK_BUFFER_BINDING   0x88EF
 
#define GL_PIXEL_PACK_BUFFER_ARB   0x88EB
 
#define GL_PIXEL_UNPACK_BUFFER_ARB   0x88EC
 
#define GL_PIXEL_PACK_BUFFER_BINDING_ARB   0x88ED
 
#define GL_PIXEL_UNPACK_BUFFER_BINDING_ARB   0x88EF
 

Typedefs

typedef std::list< ref_ptr< GLBufferObject > > osg::GLBufferObjectList
 

Functions

unsigned int osg::computeBufferAlignment (unsigned int pos, unsigned int bufferAlignment)
 

Macro Definition Documentation

◆ GL_ARRAY_BUFFER_ARB

#define GL_ARRAY_BUFFER_ARB   0x8892

◆ GL_ARRAY_BUFFER_BINDING_ARB

#define GL_ARRAY_BUFFER_BINDING_ARB   0x8894

◆ GL_BUFFER_ACCESS_ARB

#define GL_BUFFER_ACCESS_ARB   0x88BB

◆ GL_BUFFER_MAP_POINTER_ARB

#define GL_BUFFER_MAP_POINTER_ARB   0x88BD

◆ GL_BUFFER_MAPPED_ARB

#define GL_BUFFER_MAPPED_ARB   0x88BC

◆ GL_BUFFER_SIZE_ARB

#define GL_BUFFER_SIZE_ARB   0x8764

◆ GL_BUFFER_USAGE_ARB

#define GL_BUFFER_USAGE_ARB   0x8765

◆ GL_COLOR_ARRAY_BUFFER_BINDING_ARB

#define GL_COLOR_ARRAY_BUFFER_BINDING_ARB   0x8898

◆ GL_DYNAMIC_COPY

#define GL_DYNAMIC_COPY   0x88EA

◆ GL_DYNAMIC_COPY_ARB

#define GL_DYNAMIC_COPY_ARB   0x88EA

◆ GL_DYNAMIC_DRAW

#define GL_DYNAMIC_DRAW   0x88E8

◆ GL_DYNAMIC_DRAW_ARB

#define GL_DYNAMIC_DRAW_ARB   0x88E8

◆ GL_DYNAMIC_READ

#define GL_DYNAMIC_READ   0x88E9

◆ GL_DYNAMIC_READ_ARB

#define GL_DYNAMIC_READ_ARB   0x88E9

◆ GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB

#define GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB   0x889B

◆ GL_ELEMENT_ARRAY_BUFFER_ARB

#define GL_ELEMENT_ARRAY_BUFFER_ARB   0x8893

◆ GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB

#define GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB   0x8895

◆ GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB

#define GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB   0x889D

◆ GL_INDEX_ARRAY_BUFFER_BINDING_ARB

#define GL_INDEX_ARRAY_BUFFER_BINDING_ARB   0x8899

◆ GL_NORMAL_ARRAY_BUFFER_BINDING_ARB

#define GL_NORMAL_ARRAY_BUFFER_BINDING_ARB   0x8897

◆ GL_PIXEL_PACK_BUFFER

#define GL_PIXEL_PACK_BUFFER   0x88EB

◆ GL_PIXEL_PACK_BUFFER_ARB

#define GL_PIXEL_PACK_BUFFER_ARB   0x88EB

◆ GL_PIXEL_PACK_BUFFER_BINDING

#define GL_PIXEL_PACK_BUFFER_BINDING   0x88ED

◆ GL_PIXEL_PACK_BUFFER_BINDING_ARB

#define GL_PIXEL_PACK_BUFFER_BINDING_ARB   0x88ED

◆ GL_PIXEL_UNPACK_BUFFER

#define GL_PIXEL_UNPACK_BUFFER   0x88EC

◆ GL_PIXEL_UNPACK_BUFFER_ARB

#define GL_PIXEL_UNPACK_BUFFER_ARB   0x88EC

◆ GL_PIXEL_UNPACK_BUFFER_BINDING

#define GL_PIXEL_UNPACK_BUFFER_BINDING   0x88EF

◆ GL_PIXEL_UNPACK_BUFFER_BINDING_ARB

#define GL_PIXEL_UNPACK_BUFFER_BINDING_ARB   0x88EF

◆ GL_READ_ONLY_ARB

#define GL_READ_ONLY_ARB   0x88B8

◆ GL_READ_WRITE_ARB

#define GL_READ_WRITE_ARB   0x88BA

◆ GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB

#define GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB   0x889C

◆ GL_STATIC_COPY

#define GL_STATIC_COPY   0x88E6

◆ GL_STATIC_COPY_ARB

#define GL_STATIC_COPY_ARB   0x88E6

◆ GL_STATIC_DRAW

#define GL_STATIC_DRAW   0x88E4

◆ GL_STATIC_DRAW_ARB

#define GL_STATIC_DRAW_ARB   0x88E4

◆ GL_STATIC_READ

#define GL_STATIC_READ   0x88E5

◆ GL_STATIC_READ_ARB

#define GL_STATIC_READ_ARB   0x88E5

◆ GL_STREAM_COPY

#define GL_STREAM_COPY   0x88E2

◆ GL_STREAM_COPY_ARB

#define GL_STREAM_COPY_ARB   0x88E2

◆ GL_STREAM_DRAW

#define GL_STREAM_DRAW   0x88E0

◆ GL_STREAM_DRAW_ARB

#define GL_STREAM_DRAW_ARB   0x88E0

◆ GL_STREAM_READ

#define GL_STREAM_READ   0x88E1

◆ GL_STREAM_READ_ARB

#define GL_STREAM_READ_ARB   0x88E1

◆ GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB

#define GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB   0x889A

◆ GL_VERTEX_ARRAY_BUFFER_BINDING_ARB

#define GL_VERTEX_ARRAY_BUFFER_BINDING_ARB   0x8896

◆ GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB

#define GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB   0x889F

◆ GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB

#define GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB   0x889E

◆ GL_WRITE_ONLY_ARB

#define GL_WRITE_ONLY_ARB   0x88B9

◆ OSG_BUFFEROBJECT

#define OSG_BUFFEROBJECT   1