OpenGL-3.0.3.0: A binding for the OpenGL graphics system
Copyright(c) Sven Panne 2002-2019
LicenseBSD3
MaintainerSven Panne <svenpanne@gmail.com>
Stabilitystable
Portabilityportable
Safe HaskellNone
LanguageHaskell2010

Graphics.Rendering.OpenGL.GL.BufferObjects

Description

This module corresponds to section 2.9 (Buffer Objects) of the OpenGL 2.1 specs.

Synopsis

Buffer Objects

data BufferObject Source #

Instances

Instances details
Eq BufferObject Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.BufferObjects

Methods

(==) :: BufferObject -> BufferObject -> Bool

(/=) :: BufferObject -> BufferObject -> Bool

Ord BufferObject Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.BufferObjects

Show BufferObject Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.BufferObjects

Methods

showsPrec :: Int -> BufferObject -> ShowS

show :: BufferObject -> String

showList :: [BufferObject] -> ShowS

ObjectName BufferObject Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.BufferObjects

Methods

isObjectName :: MonadIO m => BufferObject -> m Bool Source #

deleteObjectName :: MonadIO m => BufferObject -> m () Source #

deleteObjectNames :: MonadIO m => [BufferObject] -> m () Source #

GeneratableObjectName BufferObject Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.BufferObjects

Methods

genObjectName :: MonadIO m => m BufferObject Source #

genObjectNames :: MonadIO m => Int -> m [BufferObject] Source #

CanBeLabeled BufferObject Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.BufferObjects

Methods

objectLabel :: BufferObject -> StateVar (Maybe String) Source #

Binding Buffer Objects

Handling Buffer Data

Mapping Buffer Objects

withMappedBuffer :: BufferTarget -> BufferAccess -> (Ptr a -> IO b) -> (MappingFailure -> IO b) -> IO b Source #

Convenience function for an exception-safe combination of mapBuffer and unmapBuffer.

mapBuffer :: BufferTarget -> BufferAccess -> IO (Maybe (Ptr a)) Source #

mapBufferRange :: BufferTarget -> Offset -> Length -> [MapBufferUsage] -> IO (Maybe (Ptr a)) Source #

Indexed Buffer manipulation