opengles-0.7.0: OpenGL ES 2.0 and 3.0 with EGL 1.4

Safe HaskellNone
LanguageHaskell2010

Graphics.OpenGLES.Internal

Contents

Synopsis

Internal

Logging

GL Error

GL Object management

data GLObj Source

Constructors

GLObj GLuint (GL GLObj) (ForeignPtr GLuint) 

Instances

newGLO :: (GLsizei -> Ptr GLuint -> GL ()) -> (GLsizei -> Ptr GLuint -> GL ()) -> (GLuint -> GL ()) -> GL GLO Source

genObj :: (GLsizei -> Ptr GLuint -> GL ()) -> (GLsizei -> Ptr GLuint -> GL ()) -> (GLuint -> GL ()) -> GL GLObj Source

genObj glo glGenBuffers glDeleteBuffers

Types

Buffer

type GLArray a = Vector a Source

data Buffer a Source

Constructors

Buffer (IORef (Either (GLArray a) Int)) GLO 

newtype BufferUsage Source

Constructors

BufferUsage GLenum 

newtype BufferSlot Source

Constructors

BufferSlot GLenum 

DrawMode

newtype DrawMode Source

Constructors

DrawMode GLenum 

Graphics State

newtype Capability Source

Constructors

Capability GLenum 

newtype CullFace Source

Constructors

Culling GLenum 

newtype CompFunc Source

Constructors

CompFunc GLenum 

newtype StencilOp Source

Constructors

StencilOp GLenum 

newtype BlendOp Source

Constructors

BlendOp GLenum 

newtype Hint Source

Constructors

Hint GLenum 

Programmable Shader

type VarDesc = (String, (GLint, GLsizei, GLenum)) Source

name: (location, length of array, type)

Uniform

newtype Uniform p a Source

Constructors

Uniform (GLint, GLsizei, Ptr ()) 

Attrib

newtype Attrib p a Source

Constructors

Attrib (GLuint, GLsizei, GLboolean, GLuint) 

Instances

Show (Attrib p a) 
(VertexAttribute a, (~) * (Vectorize a) (v a'), (~) * (Vectorize b) (v b'), KnownNat (VDim v), AttrElement b', VertexAttributeArray a' b') => AttrStruct (Attrib p a) p b 
(VertexAttribute (f (g a)), Applicative g, Floating a, FoldableWithIndex (E V4) g, KnownNat (VDim f), KnownNat (SizeOf (f a)), KnownNat (SizeOf (f (g a))), AttrElement a) => AttrStruct (Attrib p (f (g a))) p (f (g a)) 

class AttrStruct a p b | a -> p where Source

A set of VertexAttributes packed in a Buffer

Methods

glVertexBuffer :: a -> Buffer b -> GL () Source

Instances

(VertexAttribute a, (~) * (Vectorize a) (v a'), (~) * (Vectorize b) (v b'), KnownNat (VDim v), AttrElement b', VertexAttributeArray a' b') => AttrStruct (Attrib p a) p b 
(VertexAttribute (f (g a)), Applicative g, Floating a, FoldableWithIndex (E V4) g, KnownNat (VDim f), KnownNat (SizeOf (f a)), KnownNat (SizeOf (f (g a))), AttrElement a) => AttrStruct (Attrib p (f (g a))) p (f (g a)) 

Vertex Array Object

newtype VertexArray p Source

Constructors

VertexArray (GLO, GL ()) 

Vertex Picker

newtype VertexPicker Source

Constructors

VertexPicker (GLenum -> GL Bool) 

class VertexIx a where Source

Methods

vxix :: m a -> (GLenum, GLint) Source

Draw Operation

newtype BufferMask Source

Constructors

BufferMask GLenum 

Instances

Framebuffer

class Attachable a b where Source

Methods

glAttachToFramebuffer :: GLenum -> a b -> IORef (V2 GLsizei) -> GL () Source

Texture

data Texture a Source

Constructors

Texture GLenum (IORef Ktx) GLO 

Instances