OpenGL-3.0.3.0: A binding for the OpenGL graphics system

Copyright | (c) Sven Panne 2002-2019
License | BSD3
Maintainer | Sven Panne <svenpanne@gmail.com>
Stability | stable
Portability | portable
Safe Haskell | None
Language | Haskell2010

Graphics.Rendering.OpenGL.GL.VertexSpec

Contents

- Vertex Coordinates
- Auxiliary Vertex Attributes
  - Texture Coordinates
  - Normal
  - Fog Coordinate
  - Color and Secondary Color
- Generic Vertex Attributes
- Texture Units

Description

This module corresponds to section 2.7 (Vertex Specification) of the OpenGL 2.1 specs.

Synopsis

- class Vertex a where
  - vertex :: a -> IO ()
  - vertexv :: Ptr a -> IO ()
- class VertexComponent a
- currentTextureCoords :: StateVar (TexCoord4 GLfloat)
- class TexCoord a where
  - texCoord :: a -> IO ()
  - texCoordv :: Ptr a -> IO ()
  - multiTexCoord :: TextureUnit -> a -> IO ()
  - multiTexCoordv :: TextureUnit -> Ptr a -> IO ()
- class TexCoordComponent a
- newtype TexCoord1 a = TexCoord1 a
- data TexCoord2 a = TexCoord2 !a !a
- data TexCoord3 a = TexCoord3 !a !a !a
- data TexCoord4 a = TexCoord4 !a !a !a !a
- currentNormal :: StateVar (Normal3 GLfloat)
- class Normal a where
  - normal :: a -> IO ()
  - normalv :: Ptr a -> IO ()
- class NormalComponent a
- data Normal3 a = Normal3 !a !a !a
- currentFogCoord :: StateVar (FogCoord1 GLfloat)
- class FogCoord a where
  - fogCoord :: a -> IO ()
  - fogCoordv :: Ptr a -> IO ()
- class FogCoordComponent a
- newtype FogCoord1 a = FogCoord1 a
- rgbaMode :: GettableStateVar Bool
- currentColor :: StateVar (Color4 GLfloat)
- class Color a where
  - color :: a -> IO ()
  - colorv :: Ptr a -> IO ()
- currentSecondaryColor :: StateVar (Color3 GLfloat)
- class SecondaryColor a where
  - secondaryColor :: a -> IO ()
  - secondaryColorv :: Ptr a -> IO ()
- class ColorComponent a
- data Color3 a = Color3 !a !a !a
- data Color4 a = Color4 !a !a !a !a
- currentIndex :: StateVar (Index1 GLint)
- class Index a where
  - index :: a -> IO ()
  - indexv :: Ptr a -> IO ()
- class IndexComponent a
- newtype Index1 a = Index1 a
- data IntegerHandling
  - = ToFloat
  - | ToNormalizedFloat
  - | KeepIntegral
- newtype AttribLocation = AttribLocation GLuint
- currentVertexAttrib :: AttribLocation -> StateVar (Vertex4 GLfloat)
- currentVertexAttribI :: AttribLocation -> StateVar (Vertex4 GLint)
- currentVertexAttribIu :: AttribLocation -> StateVar (Vertex4 GLuint)
- class VertexAttrib a where
  - vertexAttrib :: IntegerHandling -> AttribLocation -> a -> IO ()
  - vertexAttribv :: IntegerHandling -> AttribLocation -> Ptr a -> IO ()
- class (Storable a, Num a) => VertexAttribComponent a where
  - vertexAttrib1 :: AttribLocation -> a -> IO ()
  - vertexAttrib2 :: AttribLocation -> a -> a -> IO ()
  - vertexAttrib3 :: AttribLocation -> a -> a -> a -> IO ()
  - vertexAttrib4 :: AttribLocation -> a -> a -> a -> a -> IO ()
  - vertexAttrib1N :: AttribLocation -> a -> IO ()
  - vertexAttrib2N :: AttribLocation -> a -> a -> IO ()
  - vertexAttrib3N :: AttribLocation -> a -> a -> a -> IO ()
  - vertexAttrib4N :: AttribLocation -> a -> a -> a -> a -> IO ()
  - vertexAttrib1I :: AttribLocation -> a -> IO ()
  - vertexAttrib2I :: AttribLocation -> a -> a -> IO ()
  - vertexAttrib3I :: AttribLocation -> a -> a -> a -> IO ()
  - vertexAttrib4I :: AttribLocation -> a -> a -> a -> a -> IO ()
  - vertexAttrib1v :: AttribLocation -> Ptr a -> IO ()
  - vertexAttrib2v :: AttribLocation -> Ptr a -> IO ()
  - vertexAttrib3v :: AttribLocation -> Ptr a -> IO ()
  - vertexAttrib4v :: AttribLocation -> Ptr a -> IO ()
  - vertexAttrib1Nv :: AttribLocation -> Ptr a -> IO ()
  - vertexAttrib2Nv :: AttribLocation -> Ptr a -> IO ()
  - vertexAttrib3Nv :: AttribLocation -> Ptr a -> IO ()
  - vertexAttrib4Nv :: AttribLocation -> Ptr a -> IO ()
  - vertexAttrib1Iv :: AttribLocation -> Ptr a -> IO ()
  - vertexAttrib2Iv :: AttribLocation -> Ptr a -> IO ()
  - vertexAttrib3Iv :: AttribLocation -> Ptr a -> IO ()
  - vertexAttrib4Iv :: AttribLocation -> Ptr a -> IO ()
- newtype TextureUnit = TextureUnit GLuint
- maxTextureUnit :: GettableStateVar TextureUnit

# Vertex Coordinates

class Vertex a where Source #

Specify the (x, y, z, w) coordinates of a four-dimensional vertex. This must only be done during `renderPrimitive`, otherwise the behaviour is unspecified. The current values of the auxiliary vertex attributes are associated with the vertex.

Note that there is no such thing as a "current vertex" which could be retrieved.

Methods

vertex :: a -> IO () Source #

vertexv :: Ptr a -> IO () Source #

#### Instances

Instances details

VertexComponent a => Vertex (Vertex2 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods vertex :: Vertex2 a -> IO () Source # vertexv :: Ptr (Vertex2 a) -> IO () Source #
VertexComponent a => Vertex (Vertex3 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods vertex :: Vertex3 a -> IO () Source # vertexv :: Ptr (Vertex3 a) -> IO () Source #
VertexComponent a => Vertex (Vertex4 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods vertex :: Vertex4 a -> IO () Source # vertexv :: Ptr (Vertex4 a) -> IO () Source #

class VertexComponent a Source #

The class of all types which can be used as a vertex coordinate.

Minimal complete definition

vertex2, vertex3, vertex4, vertex2v, vertex3v, vertex4v

#### Instances

Instances details

VertexComponent GLdouble Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods vertex2 :: GLdouble -> GLdouble -> IO () vertex3 :: GLdouble -> GLdouble -> GLdouble -> IO () vertex4 :: GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO () vertex2v :: Ptr GLdouble -> IO () vertex3v :: Ptr GLdouble -> IO () vertex4v :: Ptr GLdouble -> IO ()
VertexComponent GLfloat Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods vertex2 :: GLfloat -> GLfloat -> IO () vertex3 :: GLfloat -> GLfloat -> GLfloat -> IO () vertex4 :: GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO () vertex2v :: Ptr GLfloat -> IO () vertex3v :: Ptr GLfloat -> IO () vertex4v :: Ptr GLfloat -> IO ()
VertexComponent GLint Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods vertex2 :: GLint -> GLint -> IO () vertex3 :: GLint -> GLint -> GLint -> IO () vertex4 :: GLint -> GLint -> GLint -> GLint -> IO () vertex2v :: Ptr GLint -> IO () vertex3v :: Ptr GLint -> IO () vertex4v :: Ptr GLint -> IO ()
VertexComponent GLshort Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods vertex2 :: GLshort -> GLshort -> IO () vertex3 :: GLshort -> GLshort -> GLshort -> IO () vertex4 :: GLshort -> GLshort -> GLshort -> GLshort -> IO () vertex2v :: Ptr GLshort -> IO () vertex3v :: Ptr GLshort -> IO () vertex4v :: Ptr GLshort -> IO ()

# Auxiliary Vertex Attributes

Apart from its coordinates in four-dimensional space, every vertex has associated auxiliary attributes: Its texture coordinates, a normal, a fog coordinate, and a color plus a secondary color. For every attribute, the OpenGL state contains its current value, which can be changed at any time.

Every attribute has a "natural" format via which it can be manipulated directly as part of the OpenGL state, e.g. the current texture coordinates are internally handled as ``TexCoord4` `GLfloat``. Different formats are converted to this format, e.g. the s, r, and t coordinates of a ``TexCoord3` `GLint`` are converted to floating point values and a q coordinate of 1.0 is implicitly assumed.

Consequently, the vast majority of classes, functions, and data types in this module are for convenience only and offer no additional functionality.

## Texture Coordinates

currentTextureCoords :: StateVar (TexCoord4 GLfloat) Source #

The current texture coordinates (s, t, r, q) for the current texture unit (see `activeTexture`). The initial value is (0,0,0,1) for all texture units.

class TexCoord a where Source #

Change the current texture coordinates of the current or given texture unit.

Methods

texCoord :: a -> IO () Source #

texCoordv :: Ptr a -> IO () Source #

multiTexCoord :: TextureUnit -> a -> IO () Source #

multiTexCoordv :: TextureUnit -> Ptr a -> IO () Source #

#### Instances

Instances details

TexCoordComponent a => TexCoord (TexCoord1 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods texCoord :: TexCoord1 a -> IO () Source # texCoordv :: Ptr (TexCoord1 a) -> IO () Source # multiTexCoord :: TextureUnit -> TexCoord1 a -> IO () Source # multiTexCoordv :: TextureUnit -> Ptr (TexCoord1 a) -> IO () Source #
TexCoordComponent a => TexCoord (TexCoord2 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods texCoord :: TexCoord2 a -> IO () Source # texCoordv :: Ptr (TexCoord2 a) -> IO () Source # multiTexCoord :: TextureUnit -> TexCoord2 a -> IO () Source # multiTexCoordv :: TextureUnit -> Ptr (TexCoord2 a) -> IO () Source #
TexCoordComponent a => TexCoord (TexCoord3 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods texCoord :: TexCoord3 a -> IO () Source # texCoordv :: Ptr (TexCoord3 a) -> IO () Source # multiTexCoord :: TextureUnit -> TexCoord3 a -> IO () Source # multiTexCoordv :: TextureUnit -> Ptr (TexCoord3 a) -> IO () Source #
TexCoordComponent a => TexCoord (TexCoord4 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods texCoord :: TexCoord4 a -> IO () Source # texCoordv :: Ptr (TexCoord4 a) -> IO () Source # multiTexCoord :: TextureUnit -> TexCoord4 a -> IO () Source # multiTexCoordv :: TextureUnit -> Ptr (TexCoord4 a) -> IO () Source #

class TexCoordComponent a Source #

The class of all types which can be used as a texture coordinate.

Minimal complete definition

texCoord1, texCoord2, texCoord3, texCoord4, texCoord1v, texCoord2v, texCoord3v, texCoord4v, multiTexCoord1, multiTexCoord2, multiTexCoord3, multiTexCoord4, multiTexCoord1v, multiTexCoord2v, multiTexCoord3v, multiTexCoord4v

#### Instances

Instances details

TexCoordComponent GLdouble Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

Methods

texCoord1 :: GLdouble -> IO ()

texCoord2 :: GLdouble -> GLdouble -> IO ()

texCoord3 :: GLdouble -> GLdouble -> GLdouble -> IO ()

texCoord4 :: GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()

texCoord1v :: Ptr GLdouble -> IO ()

texCoord2v :: Ptr GLdouble -> IO ()

texCoord3v :: Ptr GLdouble -> IO ()

texCoord4v :: Ptr GLdouble -> IO ()

multiTexCoord1 :: GLenum -> GLdouble -> IO ()

multiTexCoord2 :: GLenum -> GLdouble -> GLdouble -> IO ()

multiTexCoord3 :: GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ()

multiTexCoord4 :: GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()

multiTexCoord1v :: GLenum -> Ptr GLdouble -> IO ()

multiTexCoord2v :: GLenum -> Ptr GLdouble -> IO ()

multiTexCoord3v :: GLenum -> Ptr GLdouble -> IO ()

multiTexCoord4v :: GLenum -> Ptr GLdouble -> IO ()

TexCoordComponent GLfloat Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

Methods

texCoord1 :: GLfloat -> IO ()

texCoord2 :: GLfloat -> GLfloat -> IO ()

texCoord3 :: GLfloat -> GLfloat -> GLfloat -> IO ()

texCoord4 :: GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

texCoord1v :: Ptr GLfloat -> IO ()

texCoord2v :: Ptr GLfloat -> IO ()

texCoord3v :: Ptr GLfloat -> IO ()

texCoord4v :: Ptr GLfloat -> IO ()

multiTexCoord1 :: GLenum -> GLfloat -> IO ()

multiTexCoord2 :: GLenum -> GLfloat -> GLfloat -> IO ()

multiTexCoord3 :: GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ()

multiTexCoord4 :: GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

multiTexCoord1v :: GLenum -> Ptr GLfloat -> IO ()

multiTexCoord2v :: GLenum -> Ptr GLfloat -> IO ()

multiTexCoord3v :: GLenum -> Ptr GLfloat -> IO ()

multiTexCoord4v :: GLenum -> Ptr GLfloat -> IO ()

TexCoordComponent GLint Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

Methods

texCoord1 :: GLint -> IO ()

texCoord2 :: GLint -> GLint -> IO ()

texCoord3 :: GLint -> GLint -> GLint -> IO ()

texCoord4 :: GLint -> GLint -> GLint -> GLint -> IO ()

texCoord1v :: Ptr GLint -> IO ()

texCoord2v :: Ptr GLint -> IO ()

texCoord3v :: Ptr GLint -> IO ()

texCoord4v :: Ptr GLint -> IO ()

multiTexCoord1 :: GLenum -> GLint -> IO ()

multiTexCoord2 :: GLenum -> GLint -> GLint -> IO ()

multiTexCoord3 :: GLenum -> GLint -> GLint -> GLint -> IO ()

multiTexCoord4 :: GLenum -> GLint -> GLint -> GLint -> GLint -> IO ()

multiTexCoord1v :: GLenum -> Ptr GLint -> IO ()

multiTexCoord2v :: GLenum -> Ptr GLint -> IO ()

multiTexCoord3v :: GLenum -> Ptr GLint -> IO ()

multiTexCoord4v :: GLenum -> Ptr GLint -> IO ()

TexCoordComponent GLshort Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

Methods

texCoord1 :: GLshort -> IO ()

texCoord2 :: GLshort -> GLshort -> IO ()

texCoord3 :: GLshort -> GLshort -> GLshort -> IO ()

texCoord4 :: GLshort -> GLshort -> GLshort -> GLshort -> IO ()

texCoord1v :: Ptr GLshort -> IO ()

texCoord2v :: Ptr GLshort -> IO ()

texCoord3v :: Ptr GLshort -> IO ()

texCoord4v :: Ptr GLshort -> IO ()

multiTexCoord1 :: GLenum -> GLshort -> IO ()

multiTexCoord2 :: GLenum -> GLshort -> GLshort -> IO ()

multiTexCoord3 :: GLenum -> GLshort -> GLshort -> GLshort -> IO ()

multiTexCoord4 :: GLenum -> GLshort -> GLshort -> GLshort -> GLshort -> IO ()

multiTexCoord1v :: GLenum -> Ptr GLshort -> IO ()

multiTexCoord2v :: GLenum -> Ptr GLshort -> IO ()

multiTexCoord3v :: GLenum -> Ptr GLshort -> IO ()

multiTexCoord4v :: GLenum -> Ptr GLshort -> IO ()

newtype TexCoord1 a Source #

Texture coordinates with t=0, r=0, and q=1.

Constructors

TexCoord1 a |

#### Instances

Instances details

ControlPoint TexCoord1 Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.ControlPoint

Methods

map1Target :: Domain d => TexCoord1 d -> GLenum

map2Target :: Domain d => TexCoord1 d -> GLenum

enableCap1 :: Domain d => TexCoord1 d -> EnableCap

enableCap2 :: Domain d => TexCoord1 d -> EnableCap

numComponents :: Domain d => TexCoord1 d -> Stride

peekControlPoint :: Domain d => Ptr (TexCoord1 d) -> IO (TexCoord1 d)

pokeControlPoint :: Domain d => Ptr (TexCoord1 d) -> TexCoord1 d -> IO ()

Applicative TexCoord1 Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods pure :: a -> TexCoord1 a Source # (<*>) :: TexCoord1 (a -> b) -> TexCoord1 a -> TexCoord1 b Source # liftA2 :: (a -> b -> c) -> TexCoord1 a -> TexCoord1 b -> TexCoord1 c Source # (*>) :: TexCoord1 a -> TexCoord1 b -> TexCoord1 b Source # (<*) :: TexCoord1 a -> TexCoord1 b -> TexCoord1 a Source #
Functor TexCoord1 Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods fmap :: (a -> b) -> TexCoord1 a -> TexCoord1 b Source # (<$) :: a -> TexCoord1 b -> TexCoord1 a Source #
Foldable TexCoord1 Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

fold :: Monoid m => TexCoord1 m -> m Source #

foldMap :: Monoid m => (a -> m) -> TexCoord1 a -> m Source #

foldMap' :: Monoid m => (a -> m) -> TexCoord1 a -> m Source #

foldr :: (a -> b -> b) -> b -> TexCoord1 a -> b Source #

foldr' :: (a -> b -> b) -> b -> TexCoord1 a -> b Source #

foldl :: (b -> a -> b) -> b -> TexCoord1 a -> b Source #

foldl' :: (b -> a -> b) -> b -> TexCoord1 a -> b Source #

foldr1 :: (a -> a -> a) -> TexCoord1 a -> a Source #

foldl1 :: (a -> a -> a) -> TexCoord1 a -> a Source #

toList :: TexCoord1 a -> [a] Source #

null :: TexCoord1 a -> Bool Source #

length :: TexCoord1 a -> Int Source #

elem :: Eq a => a -> TexCoord1 a -> Bool Source #

maximum :: Ord a => TexCoord1 a -> a Source #

minimum :: Ord a => TexCoord1 a -> a Source #

sum :: Num a => TexCoord1 a -> a Source #

product :: Num a => TexCoord1 a -> a Source #

Traversable TexCoord1 Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods traverse :: Applicative f => (a -> f b) -> TexCoord1 a -> f (TexCoord1 b) Source # sequenceA :: Applicative f => TexCoord1 (f a) -> f (TexCoord1 a) Source # mapM :: Monad m => (a -> m b) -> TexCoord1 a -> m (TexCoord1 b) Source # sequence :: Monad m => TexCoord1 (m a) -> m (TexCoord1 a) Source #
UniformComponent a => Uniform (TexCoord1 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.Shaders.Uniform Methods uniform :: UniformLocation -> StateVar (TexCoord1 a) Source # uniformv :: UniformLocation -> GLsizei -> Ptr (TexCoord1 a) -> IO () Source #
TexCoordComponent a => TexCoord (TexCoord1 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods texCoord :: TexCoord1 a -> IO () Source # texCoordv :: Ptr (TexCoord1 a) -> IO () Source # multiTexCoord :: TextureUnit -> TexCoord1 a -> IO () Source # multiTexCoordv :: TextureUnit -> Ptr (TexCoord1 a) -> IO () Source #
VertexAttribComponent a => VertexAttrib (TexCoord1 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods vertexAttrib :: IntegerHandling -> AttribLocation -> TexCoord1 a -> IO () Source # vertexAttribv :: IntegerHandling -> AttribLocation -> Ptr (TexCoord1 a) -> IO () Source #
Bounded a => Bounded (TexCoord1 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods minBound :: TexCoord1 a Source # maxBound :: TexCoord1 a Source #
Storable a => Storable (TexCoord1 a) Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

sizeOf :: TexCoord1 a -> Int Source #

alignment :: TexCoord1 a -> Int Source #

peekElemOff :: Ptr (TexCoord1 a) -> Int -> IO (TexCoord1 a) Source #

pokeElemOff :: Ptr (TexCoord1 a) -> Int -> TexCoord1 a -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO (TexCoord1 a) Source #

pokeByteOff :: Ptr b -> Int -> TexCoord1 a -> IO () Source #

peek :: Ptr (TexCoord1 a) -> IO (TexCoord1 a) Source #

poke :: Ptr (TexCoord1 a) -> TexCoord1 a -> IO () Source #

Ix a => Ix (TexCoord1 a) Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

range :: (TexCoord1 a, TexCoord1 a) -> [TexCoord1 a] Source #

index :: (TexCoord1 a, TexCoord1 a) -> TexCoord1 a -> Int Source #

unsafeIndex :: (TexCoord1 a, TexCoord1 a) -> TexCoord1 a -> Int Source #

inRange :: (TexCoord1 a, TexCoord1 a) -> TexCoord1 a -> Bool Source #

rangeSize :: (TexCoord1 a, TexCoord1 a) -> Int Source #

unsafeRangeSize :: (TexCoord1 a, TexCoord1 a) -> Int Source #

Read a => Read (TexCoord1 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods readsPrec :: Int -> ReadS (TexCoord1 a) Source # readList :: ReadS [TexCoord1 a] Source # readPrec :: ReadPrec (TexCoord1 a) Source # readListPrec :: ReadPrec [TexCoord1 a] Source #
Show a => Show (TexCoord1 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods showsPrec :: Int -> TexCoord1 a -> ShowS Source # show :: TexCoord1 a -> String Source # showList :: [TexCoord1 a] -> ShowS Source #
Eq a => Eq (TexCoord1 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods (==) :: TexCoord1 a -> TexCoord1 a -> Bool Source # (/=) :: TexCoord1 a -> TexCoord1 a -> Bool Source #
Ord a => Ord (TexCoord1 a) Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

compare :: TexCoord1 a -> TexCoord1 a -> Ordering Source #

(<) :: TexCoord1 a -> TexCoord1 a -> Bool Source #

(<=) :: TexCoord1 a -> TexCoord1 a -> Bool Source #

(>) :: TexCoord1 a -> TexCoord1 a -> Bool Source #

(>=) :: TexCoord1 a -> TexCoord1 a -> Bool Source #

max :: TexCoord1 a -> TexCoord1 a -> TexCoord1 a Source #

min :: TexCoord1 a -> TexCoord1 a -> TexCoord1 a Source #

data TexCoord2 a Source #

Texture coordinates with r=0 and q=1.

Constructors

TexCoord2 !a !a |

#### Instances

Instances details

ControlPoint TexCoord2 Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.ControlPoint

Methods

map1Target :: Domain d => TexCoord2 d -> GLenum

map2Target :: Domain d => TexCoord2 d -> GLenum

enableCap1 :: Domain d => TexCoord2 d -> EnableCap

enableCap2 :: Domain d => TexCoord2 d -> EnableCap

numComponents :: Domain d => TexCoord2 d -> Stride

peekControlPoint :: Domain d => Ptr (TexCoord2 d) -> IO (TexCoord2 d)

pokeControlPoint :: Domain d => Ptr (TexCoord2 d) -> TexCoord2 d -> IO ()

Applicative TexCoord2 Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods pure :: a -> TexCoord2 a Source # (<*>) :: TexCoord2 (a -> b) -> TexCoord2 a -> TexCoord2 b Source # liftA2 :: (a -> b -> c) -> TexCoord2 a -> TexCoord2 b -> TexCoord2 c Source # (*>) :: TexCoord2 a -> TexCoord2 b -> TexCoord2 b Source # (<*) :: TexCoord2 a -> TexCoord2 b -> TexCoord2 a Source #
Functor TexCoord2 Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods fmap :: (a -> b) -> TexCoord2 a -> TexCoord2 b Source # (<$) :: a -> TexCoord2 b -> TexCoord2 a Source #
Foldable TexCoord2 Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

fold :: Monoid m => TexCoord2 m -> m Source #

foldMap :: Monoid m => (a -> m) -> TexCoord2 a -> m Source #

foldMap' :: Monoid m => (a -> m) -> TexCoord2 a -> m Source #

foldr :: (a -> b -> b) -> b -> TexCoord2 a -> b Source #

foldr' :: (a -> b -> b) -> b -> TexCoord2 a -> b Source #

foldl :: (b -> a -> b) -> b -> TexCoord2 a -> b Source #

foldl' :: (b -> a -> b) -> b -> TexCoord2 a -> b Source #

foldr1 :: (a -> a -> a) -> TexCoord2 a -> a Source #

foldl1 :: (a -> a -> a) -> TexCoord2 a -> a Source #

toList :: TexCoord2 a -> [a] Source #

null :: TexCoord2 a -> Bool Source #

length :: TexCoord2 a -> Int Source #

elem :: Eq a => a -> TexCoord2 a -> Bool Source #

maximum :: Ord a => TexCoord2 a -> a Source #

minimum :: Ord a => TexCoord2 a -> a Source #

sum :: Num a => TexCoord2 a -> a Source #

product :: Num a => TexCoord2 a -> a Source #

Traversable TexCoord2 Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods traverse :: Applicative f => (a -> f b) -> TexCoord2 a -> f (TexCoord2 b) Source # sequenceA :: Applicative f => TexCoord2 (f a) -> f (TexCoord2 a) Source # mapM :: Monad m => (a -> m b) -> TexCoord2 a -> m (TexCoord2 b) Source # sequence :: Monad m => TexCoord2 (m a) -> m (TexCoord2 a) Source #
UniformComponent a => Uniform (TexCoord2 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.Shaders.Uniform Methods uniform :: UniformLocation -> StateVar (TexCoord2 a) Source # uniformv :: UniformLocation -> GLsizei -> Ptr (TexCoord2 a) -> IO () Source #
TexCoordComponent a => TexCoord (TexCoord2 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods texCoord :: TexCoord2 a -> IO () Source # texCoordv :: Ptr (TexCoord2 a) -> IO () Source # multiTexCoord :: TextureUnit -> TexCoord2 a -> IO () Source # multiTexCoordv :: TextureUnit -> Ptr (TexCoord2 a) -> IO () Source #
VertexAttribComponent a => VertexAttrib (TexCoord2 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods vertexAttrib :: IntegerHandling -> AttribLocation -> TexCoord2 a -> IO () Source # vertexAttribv :: IntegerHandling -> AttribLocation -> Ptr (TexCoord2 a) -> IO () Source #
Bounded a => Bounded (TexCoord2 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods minBound :: TexCoord2 a Source # maxBound :: TexCoord2 a Source #
Storable a => Storable (TexCoord2 a) Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

sizeOf :: TexCoord2 a -> Int Source #

alignment :: TexCoord2 a -> Int Source #

peekElemOff :: Ptr (TexCoord2 a) -> Int -> IO (TexCoord2 a) Source #

pokeElemOff :: Ptr (TexCoord2 a) -> Int -> TexCoord2 a -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO (TexCoord2 a) Source #

pokeByteOff :: Ptr b -> Int -> TexCoord2 a -> IO () Source #

peek :: Ptr (TexCoord2 a) -> IO (TexCoord2 a) Source #

poke :: Ptr (TexCoord2 a) -> TexCoord2 a -> IO () Source #

Ix a => Ix (TexCoord2 a) Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

range :: (TexCoord2 a, TexCoord2 a) -> [TexCoord2 a] Source #

index :: (TexCoord2 a, TexCoord2 a) -> TexCoord2 a -> Int Source #

unsafeIndex :: (TexCoord2 a, TexCoord2 a) -> TexCoord2 a -> Int Source #

inRange :: (TexCoord2 a, TexCoord2 a) -> TexCoord2 a -> Bool Source #

rangeSize :: (TexCoord2 a, TexCoord2 a) -> Int Source #

unsafeRangeSize :: (TexCoord2 a, TexCoord2 a) -> Int Source #

Read a => Read (TexCoord2 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods readsPrec :: Int -> ReadS (TexCoord2 a) Source # readList :: ReadS [TexCoord2 a] Source # readPrec :: ReadPrec (TexCoord2 a) Source # readListPrec :: ReadPrec [TexCoord2 a] Source #
Show a => Show (TexCoord2 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods showsPrec :: Int -> TexCoord2 a -> ShowS Source # show :: TexCoord2 a -> String Source # showList :: [TexCoord2 a] -> ShowS Source #
Eq a => Eq (TexCoord2 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods (==) :: TexCoord2 a -> TexCoord2 a -> Bool Source # (/=) :: TexCoord2 a -> TexCoord2 a -> Bool Source #
Ord a => Ord (TexCoord2 a) Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

compare :: TexCoord2 a -> TexCoord2 a -> Ordering Source #

(<) :: TexCoord2 a -> TexCoord2 a -> Bool Source #

(<=) :: TexCoord2 a -> TexCoord2 a -> Bool Source #

(>) :: TexCoord2 a -> TexCoord2 a -> Bool Source #

(>=) :: TexCoord2 a -> TexCoord2 a -> Bool Source #

max :: TexCoord2 a -> TexCoord2 a -> TexCoord2 a Source #

min :: TexCoord2 a -> TexCoord2 a -> TexCoord2 a Source #

data TexCoord3 a Source #

Texture coordinates with q=1.

Constructors

TexCoord3 !a !a !a |

#### Instances

Instances details

ControlPoint TexCoord3 Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.ControlPoint

Methods

map1Target :: Domain d => TexCoord3 d -> GLenum

map2Target :: Domain d => TexCoord3 d -> GLenum

enableCap1 :: Domain d => TexCoord3 d -> EnableCap

enableCap2 :: Domain d => TexCoord3 d -> EnableCap

numComponents :: Domain d => TexCoord3 d -> Stride

peekControlPoint :: Domain d => Ptr (TexCoord3 d) -> IO (TexCoord3 d)

pokeControlPoint :: Domain d => Ptr (TexCoord3 d) -> TexCoord3 d -> IO ()

Applicative TexCoord3 Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods pure :: a -> TexCoord3 a Source # (<*>) :: TexCoord3 (a -> b) -> TexCoord3 a -> TexCoord3 b Source # liftA2 :: (a -> b -> c) -> TexCoord3 a -> TexCoord3 b -> TexCoord3 c Source # (*>) :: TexCoord3 a -> TexCoord3 b -> TexCoord3 b Source # (<*) :: TexCoord3 a -> TexCoord3 b -> TexCoord3 a Source #
Functor TexCoord3 Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods fmap :: (a -> b) -> TexCoord3 a -> TexCoord3 b Source # (<$) :: a -> TexCoord3 b -> TexCoord3 a Source #
Foldable TexCoord3 Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

fold :: Monoid m => TexCoord3 m -> m Source #

foldMap :: Monoid m => (a -> m) -> TexCoord3 a -> m Source #

foldMap' :: Monoid m => (a -> m) -> TexCoord3 a -> m Source #

foldr :: (a -> b -> b) -> b -> TexCoord3 a -> b Source #

foldr' :: (a -> b -> b) -> b -> TexCoord3 a -> b Source #

foldl :: (b -> a -> b) -> b -> TexCoord3 a -> b Source #

foldl' :: (b -> a -> b) -> b -> TexCoord3 a -> b Source #

foldr1 :: (a -> a -> a) -> TexCoord3 a -> a Source #

foldl1 :: (a -> a -> a) -> TexCoord3 a -> a Source #

toList :: TexCoord3 a -> [a] Source #

null :: TexCoord3 a -> Bool Source #

length :: TexCoord3 a -> Int Source #

elem :: Eq a => a -> TexCoord3 a -> Bool Source #

maximum :: Ord a => TexCoord3 a -> a Source #

minimum :: Ord a => TexCoord3 a -> a Source #

sum :: Num a => TexCoord3 a -> a Source #

product :: Num a => TexCoord3 a -> a Source #

Traversable TexCoord3 Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods traverse :: Applicative f => (a -> f b) -> TexCoord3 a -> f (TexCoord3 b) Source # sequenceA :: Applicative f => TexCoord3 (f a) -> f (TexCoord3 a) Source # mapM :: Monad m => (a -> m b) -> TexCoord3 a -> m (TexCoord3 b) Source # sequence :: Monad m => TexCoord3 (m a) -> m (TexCoord3 a) Source #
UniformComponent a => Uniform (TexCoord3 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.Shaders.Uniform Methods uniform :: UniformLocation -> StateVar (TexCoord3 a) Source # uniformv :: UniformLocation -> GLsizei -> Ptr (TexCoord3 a) -> IO () Source #
TexCoordComponent a => TexCoord (TexCoord3 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods texCoord :: TexCoord3 a -> IO () Source # texCoordv :: Ptr (TexCoord3 a) -> IO () Source # multiTexCoord :: TextureUnit -> TexCoord3 a -> IO () Source # multiTexCoordv :: TextureUnit -> Ptr (TexCoord3 a) -> IO () Source #
VertexAttribComponent a => VertexAttrib (TexCoord3 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods vertexAttrib :: IntegerHandling -> AttribLocation -> TexCoord3 a -> IO () Source # vertexAttribv :: IntegerHandling -> AttribLocation -> Ptr (TexCoord3 a) -> IO () Source #
Bounded a => Bounded (TexCoord3 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods minBound :: TexCoord3 a Source # maxBound :: TexCoord3 a Source #
Storable a => Storable (TexCoord3 a) Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

sizeOf :: TexCoord3 a -> Int Source #

alignment :: TexCoord3 a -> Int Source #

peekElemOff :: Ptr (TexCoord3 a) -> Int -> IO (TexCoord3 a) Source #

pokeElemOff :: Ptr (TexCoord3 a) -> Int -> TexCoord3 a -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO (TexCoord3 a) Source #

pokeByteOff :: Ptr b -> Int -> TexCoord3 a -> IO () Source #

peek :: Ptr (TexCoord3 a) -> IO (TexCoord3 a) Source #

poke :: Ptr (TexCoord3 a) -> TexCoord3 a -> IO () Source #

Ix a => Ix (TexCoord3 a) Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

range :: (TexCoord3 a, TexCoord3 a) -> [TexCoord3 a] Source #

index :: (TexCoord3 a, TexCoord3 a) -> TexCoord3 a -> Int Source #

unsafeIndex :: (TexCoord3 a, TexCoord3 a) -> TexCoord3 a -> Int Source #

inRange :: (TexCoord3 a, TexCoord3 a) -> TexCoord3 a -> Bool Source #

rangeSize :: (TexCoord3 a, TexCoord3 a) -> Int Source #

unsafeRangeSize :: (TexCoord3 a, TexCoord3 a) -> Int Source #

Read a => Read (TexCoord3 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods readsPrec :: Int -> ReadS (TexCoord3 a) Source # readList :: ReadS [TexCoord3 a] Source # readPrec :: ReadPrec (TexCoord3 a) Source # readListPrec :: ReadPrec [TexCoord3 a] Source #
Show a => Show (TexCoord3 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods showsPrec :: Int -> TexCoord3 a -> ShowS Source # show :: TexCoord3 a -> String Source # showList :: [TexCoord3 a] -> ShowS Source #
Eq a => Eq (TexCoord3 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods (==) :: TexCoord3 a -> TexCoord3 a -> Bool Source # (/=) :: TexCoord3 a -> TexCoord3 a -> Bool Source #
Ord a => Ord (TexCoord3 a) Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

compare :: TexCoord3 a -> TexCoord3 a -> Ordering Source #

(<) :: TexCoord3 a -> TexCoord3 a -> Bool Source #

(<=) :: TexCoord3 a -> TexCoord3 a -> Bool Source #

(>) :: TexCoord3 a -> TexCoord3 a -> Bool Source #

(>=) :: TexCoord3 a -> TexCoord3 a -> Bool Source #

max :: TexCoord3 a -> TexCoord3 a -> TexCoord3 a Source #

min :: TexCoord3 a -> TexCoord3 a -> TexCoord3 a Source #

data TexCoord4 a Source #

Fully-fledged four-dimensional texture coordinates.

Constructors

TexCoord4 !a !a !a !a |

#### Instances

Instances details

ControlPoint TexCoord4 Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.ControlPoint

Methods

map1Target :: Domain d => TexCoord4 d -> GLenum

map2Target :: Domain d => TexCoord4 d -> GLenum

enableCap1 :: Domain d => TexCoord4 d -> EnableCap

enableCap2 :: Domain d => TexCoord4 d -> EnableCap

numComponents :: Domain d => TexCoord4 d -> Stride

peekControlPoint :: Domain d => Ptr (TexCoord4 d) -> IO (TexCoord4 d)

pokeControlPoint :: Domain d => Ptr (TexCoord4 d) -> TexCoord4 d -> IO ()

Applicative TexCoord4 Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods pure :: a -> TexCoord4 a Source # (<*>) :: TexCoord4 (a -> b) -> TexCoord4 a -> TexCoord4 b Source # liftA2 :: (a -> b -> c) -> TexCoord4 a -> TexCoord4 b -> TexCoord4 c Source # (*>) :: TexCoord4 a -> TexCoord4 b -> TexCoord4 b Source # (<*) :: TexCoord4 a -> TexCoord4 b -> TexCoord4 a Source #
Functor TexCoord4 Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods fmap :: (a -> b) -> TexCoord4 a -> TexCoord4 b Source # (<$) :: a -> TexCoord4 b -> TexCoord4 a Source #
Foldable TexCoord4 Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

fold :: Monoid m => TexCoord4 m -> m Source #

foldMap :: Monoid m => (a -> m) -> TexCoord4 a -> m Source #

foldMap' :: Monoid m => (a -> m) -> TexCoord4 a -> m Source #

foldr :: (a -> b -> b) -> b -> TexCoord4 a -> b Source #

foldr' :: (a -> b -> b) -> b -> TexCoord4 a -> b Source #

foldl :: (b -> a -> b) -> b -> TexCoord4 a -> b Source #

foldl' :: (b -> a -> b) -> b -> TexCoord4 a -> b Source #

foldr1 :: (a -> a -> a) -> TexCoord4 a -> a Source #

foldl1 :: (a -> a -> a) -> TexCoord4 a -> a Source #

toList :: TexCoord4 a -> [a] Source #

null :: TexCoord4 a -> Bool Source #

length :: TexCoord4 a -> Int Source #

elem :: Eq a => a -> TexCoord4 a -> Bool Source #

maximum :: Ord a => TexCoord4 a -> a Source #

minimum :: Ord a => TexCoord4 a -> a Source #

sum :: Num a => TexCoord4 a -> a Source #

product :: Num a => TexCoord4 a -> a Source #

Traversable TexCoord4 Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods traverse :: Applicative f => (a -> f b) -> TexCoord4 a -> f (TexCoord4 b) Source # sequenceA :: Applicative f => TexCoord4 (f a) -> f (TexCoord4 a) Source # mapM :: Monad m => (a -> m b) -> TexCoord4 a -> m (TexCoord4 b) Source # sequence :: Monad m => TexCoord4 (m a) -> m (TexCoord4 a) Source #
UniformComponent a => Uniform (TexCoord4 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.Shaders.Uniform Methods uniform :: UniformLocation -> StateVar (TexCoord4 a) Source # uniformv :: UniformLocation -> GLsizei -> Ptr (TexCoord4 a) -> IO () Source #
TexCoordComponent a => TexCoord (TexCoord4 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods texCoord :: TexCoord4 a -> IO () Source # texCoordv :: Ptr (TexCoord4 a) -> IO () Source # multiTexCoord :: TextureUnit -> TexCoord4 a -> IO () Source # multiTexCoordv :: TextureUnit -> Ptr (TexCoord4 a) -> IO () Source #
VertexAttribComponent a => VertexAttrib (TexCoord4 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods vertexAttrib :: IntegerHandling -> AttribLocation -> TexCoord4 a -> IO () Source # vertexAttribv :: IntegerHandling -> AttribLocation -> Ptr (TexCoord4 a) -> IO () Source #
Bounded a => Bounded (TexCoord4 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods minBound :: TexCoord4 a Source # maxBound :: TexCoord4 a Source #
Storable a => Storable (TexCoord4 a) Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

sizeOf :: TexCoord4 a -> Int Source #

alignment :: TexCoord4 a -> Int Source #

peekElemOff :: Ptr (TexCoord4 a) -> Int -> IO (TexCoord4 a) Source #

pokeElemOff :: Ptr (TexCoord4 a) -> Int -> TexCoord4 a -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO (TexCoord4 a) Source #

pokeByteOff :: Ptr b -> Int -> TexCoord4 a -> IO () Source #

peek :: Ptr (TexCoord4 a) -> IO (TexCoord4 a) Source #

poke :: Ptr (TexCoord4 a) -> TexCoord4 a -> IO () Source #

Ix a => Ix (TexCoord4 a) Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

range :: (TexCoord4 a, TexCoord4 a) -> [TexCoord4 a] Source #

index :: (TexCoord4 a, TexCoord4 a) -> TexCoord4 a -> Int Source #

unsafeIndex :: (TexCoord4 a, TexCoord4 a) -> TexCoord4 a -> Int Source #

inRange :: (TexCoord4 a, TexCoord4 a) -> TexCoord4 a -> Bool Source #

rangeSize :: (TexCoord4 a, TexCoord4 a) -> Int Source #

unsafeRangeSize :: (TexCoord4 a, TexCoord4 a) -> Int Source #

Read a => Read (TexCoord4 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods readsPrec :: Int -> ReadS (TexCoord4 a) Source # readList :: ReadS [TexCoord4 a] Source # readPrec :: ReadPrec (TexCoord4 a) Source # readListPrec :: ReadPrec [TexCoord4 a] Source #
Show a => Show (TexCoord4 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods showsPrec :: Int -> TexCoord4 a -> ShowS Source # show :: TexCoord4 a -> String Source # showList :: [TexCoord4 a] -> ShowS Source #
Eq a => Eq (TexCoord4 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods (==) :: TexCoord4 a -> TexCoord4 a -> Bool Source # (/=) :: TexCoord4 a -> TexCoord4 a -> Bool Source #
Ord a => Ord (TexCoord4 a) Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

compare :: TexCoord4 a -> TexCoord4 a -> Ordering Source #

(<) :: TexCoord4 a -> TexCoord4 a -> Bool Source #

(<=) :: TexCoord4 a -> TexCoord4 a -> Bool Source #

(>) :: TexCoord4 a -> TexCoord4 a -> Bool Source #

(>=) :: TexCoord4 a -> TexCoord4 a -> Bool Source #

max :: TexCoord4 a -> TexCoord4 a -> TexCoord4 a Source #

min :: TexCoord4 a -> TexCoord4 a -> TexCoord4 a Source #

## Normal

currentNormal :: StateVar (Normal3 GLfloat) Source #

The current normal (x, y, z). The initial value is the unit vector (0, 0, 1).

class Normal a where Source #

Change the current normal. Integral arguments are converted to floating-point with a linear mapping that maps the most positive representable integer value to 1.0, and the most negative representable integer value to -1.0.

Normals specified with `normal` or `normalv` need not have unit length. If `normalize` is enabled, then normals of any length specified with `normal` or `normalv` are normalized after transformation. If `rescaleNormal` is enabled, normals are scaled by a scaling factor derived from the modelview matrix. `rescaleNormal` requires that the originally specified normals were of unit length, and that the modelview matrix contains only uniform scales for proper results. Normalization is initially disabled.

Methods

normal :: a -> IO () Source #

normalv :: Ptr a -> IO () Source #

#### Instances

Instances details

NormalComponent a => Normal (Normal3 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods normal :: Normal3 a -> IO () Source # normalv :: Ptr (Normal3 a) -> IO () Source #

class NormalComponent a Source #

The class of all types which can be used as a component of a normal.

Minimal complete definition

normal3, normal3v

#### Instances

Instances details

NormalComponent GLbyte Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods normal3 :: GLbyte -> GLbyte -> GLbyte -> IO () normal3v :: Ptr GLbyte -> IO ()
NormalComponent GLdouble Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods normal3 :: GLdouble -> GLdouble -> GLdouble -> IO () normal3v :: Ptr GLdouble -> IO ()
NormalComponent GLfloat Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods normal3 :: GLfloat -> GLfloat -> GLfloat -> IO () normal3v :: Ptr GLfloat -> IO ()
NormalComponent GLint Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods normal3 :: GLint -> GLint -> GLint -> IO () normal3v :: Ptr GLint -> IO ()
NormalComponent GLshort Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods normal3 :: GLshort -> GLshort -> GLshort -> IO () normal3v :: Ptr GLshort -> IO ()

data Normal3 a Source #

Constructors

Normal3 !a !a !a |

#### Instances

Instances details

ControlPoint Normal3 Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.ControlPoint

Methods

map1Target :: Domain d => Normal3 d -> GLenum

map2Target :: Domain d => Normal3 d -> GLenum

enableCap1 :: Domain d => Normal3 d -> EnableCap

enableCap2 :: Domain d => Normal3 d -> EnableCap

numComponents :: Domain d => Normal3 d -> Stride

peekControlPoint :: Domain d => Ptr (Normal3 d) -> IO (Normal3 d)

pokeControlPoint :: Domain d => Ptr (Normal3 d) -> Normal3 d -> IO ()

Applicative Normal3 Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods pure :: a -> Normal3 a Source # (<*>) :: Normal3 (a -> b) -> Normal3 a -> Normal3 b Source # liftA2 :: (a -> b -> c) -> Normal3 a -> Normal3 b -> Normal3 c Source # (*>) :: Normal3 a -> Normal3 b -> Normal3 b Source # (<*) :: Normal3 a -> Normal3 b -> Normal3 a Source #
Functor Normal3 Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods fmap :: (a -> b) -> Normal3 a -> Normal3 b Source # (<$) :: a -> Normal3 b -> Normal3 a Source #
Foldable Normal3 Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

fold :: Monoid m => Normal3 m -> m Source #

foldMap :: Monoid m => (a -> m) -> Normal3 a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Normal3 a -> m Source #

foldr :: (a -> b -> b) -> b -> Normal3 a -> b Source #

foldr' :: (a -> b -> b) -> b -> Normal3 a -> b Source #

foldl :: (b -> a -> b) -> b -> Normal3 a -> b Source #

foldl' :: (b -> a -> b) -> b -> Normal3 a -> b Source #

foldr1 :: (a -> a -> a) -> Normal3 a -> a Source #

foldl1 :: (a -> a -> a) -> Normal3 a -> a Source #

toList :: Normal3 a -> [a] Source #

null :: Normal3 a -> Bool Source #

length :: Normal3 a -> Int Source #

elem :: Eq a => a -> Normal3 a -> Bool Source #

maximum :: Ord a => Normal3 a -> a Source #

minimum :: Ord a => Normal3 a -> a Source #

sum :: Num a => Normal3 a -> a Source #

product :: Num a => Normal3 a -> a Source #

Traversable Normal3 Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods traverse :: Applicative f => (a -> f b) -> Normal3 a -> f (Normal3 b) Source # sequenceA :: Applicative f => Normal3 (f a) -> f (Normal3 a) Source # mapM :: Monad m => (a -> m b) -> Normal3 a -> m (Normal3 b) Source # sequence :: Monad m => Normal3 (m a) -> m (Normal3 a) Source #
UniformComponent a => Uniform (Normal3 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.Shaders.Uniform Methods uniform :: UniformLocation -> StateVar (Normal3 a) Source # uniformv :: UniformLocation -> GLsizei -> Ptr (Normal3 a) -> IO () Source #
NormalComponent a => Normal (Normal3 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods normal :: Normal3 a -> IO () Source # normalv :: Ptr (Normal3 a) -> IO () Source #
VertexAttribComponent a => VertexAttrib (Normal3 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods vertexAttrib :: IntegerHandling -> AttribLocation -> Normal3 a -> IO () Source # vertexAttribv :: IntegerHandling -> AttribLocation -> Ptr (Normal3 a) -> IO () Source #
Bounded a => Bounded (Normal3 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods minBound :: Normal3 a Source # maxBound :: Normal3 a Source #
Storable a => Storable (Normal3 a) Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

sizeOf :: Normal3 a -> Int Source #

alignment :: Normal3 a -> Int Source #

peekElemOff :: Ptr (Normal3 a) -> Int -> IO (Normal3 a) Source #

pokeElemOff :: Ptr (Normal3 a) -> Int -> Normal3 a -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO (Normal3 a) Source #

pokeByteOff :: Ptr b -> Int -> Normal3 a -> IO () Source #

peek :: Ptr (Normal3 a) -> IO (Normal3 a) Source #

poke :: Ptr (Normal3 a) -> Normal3 a -> IO () Source #

Ix a => Ix (Normal3 a) Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

range :: (Normal3 a, Normal3 a) -> [Normal3 a] Source #

index :: (Normal3 a, Normal3 a) -> Normal3 a -> Int Source #

unsafeIndex :: (Normal3 a, Normal3 a) -> Normal3 a -> Int Source #

inRange :: (Normal3 a, Normal3 a) -> Normal3 a -> Bool Source #

rangeSize :: (Normal3 a, Normal3 a) -> Int Source #

unsafeRangeSize :: (Normal3 a, Normal3 a) -> Int Source #

Read a => Read (Normal3 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods readsPrec :: Int -> ReadS (Normal3 a) Source # readList :: ReadS [Normal3 a] Source # readPrec :: ReadPrec (Normal3 a) Source # readListPrec :: ReadPrec [Normal3 a] Source #
Show a => Show (Normal3 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods showsPrec :: Int -> Normal3 a -> ShowS Source # show :: Normal3 a -> String Source # showList :: [Normal3 a] -> ShowS Source #
Eq a => Eq (Normal3 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods (==) :: Normal3 a -> Normal3 a -> Bool Source # (/=) :: Normal3 a -> Normal3 a -> Bool Source #
Ord a => Ord (Normal3 a) Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

compare :: Normal3 a -> Normal3 a -> Ordering Source #

(<) :: Normal3 a -> Normal3 a -> Bool Source #

(<=) :: Normal3 a -> Normal3 a -> Bool Source #

(>) :: Normal3 a -> Normal3 a -> Bool Source #

(>=) :: Normal3 a -> Normal3 a -> Bool Source #

max :: Normal3 a -> Normal3 a -> Normal3 a Source #

min :: Normal3 a -> Normal3 a -> Normal3 a Source #

## Fog Coordinate

currentFogCoord :: StateVar (FogCoord1 GLfloat) Source #

The current fog coordinate. The initial value is 0.

class FogCoord a where Source #

Change the current fog coordinate.

Methods

fogCoord :: a -> IO () Source #

fogCoordv :: Ptr a -> IO () Source #

#### Instances

Instances details

FogCoordComponent a => FogCoord (FogCoord1 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods fogCoord :: FogCoord1 a -> IO () Source # fogCoordv :: Ptr (FogCoord1 a) -> IO () Source #

class FogCoordComponent a Source #

The class of all types which can be used as the fog coordinate.

Minimal complete definition

fogCoord1, fogCoord1v

#### Instances

Instances details

FogCoordComponent GLdouble Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods fogCoord1 :: GLdouble -> IO () fogCoord1v :: Ptr GLdouble -> IO ()
FogCoordComponent GLfloat Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods fogCoord1 :: GLfloat -> IO () fogCoord1v :: Ptr GLfloat -> IO ()

newtype FogCoord1 a Source #

A fog coordinate.

Constructors

FogCoord1 a |

#### Instances

Instances details

Applicative FogCoord1 Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods pure :: a -> FogCoord1 a Source # (<*>) :: FogCoord1 (a -> b) -> FogCoord1 a -> FogCoord1 b Source # liftA2 :: (a -> b -> c) -> FogCoord1 a -> FogCoord1 b -> FogCoord1 c Source # (*>) :: FogCoord1 a -> FogCoord1 b -> FogCoord1 b Source # (<*) :: FogCoord1 a -> FogCoord1 b -> FogCoord1 a Source #
Functor FogCoord1 Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods fmap :: (a -> b) -> FogCoord1 a -> FogCoord1 b Source # (<$) :: a -> FogCoord1 b -> FogCoord1 a Source #
Foldable FogCoord1 Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

fold :: Monoid m => FogCoord1 m -> m Source #

foldMap :: Monoid m => (a -> m) -> FogCoord1 a -> m Source #

foldMap' :: Monoid m => (a -> m) -> FogCoord1 a -> m Source #

foldr :: (a -> b -> b) -> b -> FogCoord1 a -> b Source #

foldr' :: (a -> b -> b) -> b -> FogCoord1 a -> b Source #

foldl :: (b -> a -> b) -> b -> FogCoord1 a -> b Source #

foldl' :: (b -> a -> b) -> b -> FogCoord1 a -> b Source #

foldr1 :: (a -> a -> a) -> FogCoord1 a -> a Source #

foldl1 :: (a -> a -> a) -> FogCoord1 a -> a Source #

toList :: FogCoord1 a -> [a] Source #

null :: FogCoord1 a -> Bool Source #

length :: FogCoord1 a -> Int Source #

elem :: Eq a => a -> FogCoord1 a -> Bool Source #

maximum :: Ord a => FogCoord1 a -> a Source #

minimum :: Ord a => FogCoord1 a -> a Source #

sum :: Num a => FogCoord1 a -> a Source #

product :: Num a => FogCoord1 a -> a Source #

Traversable FogCoord1 Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods traverse :: Applicative f => (a -> f b) -> FogCoord1 a -> f (FogCoord1 b) Source # sequenceA :: Applicative f => FogCoord1 (f a) -> f (FogCoord1 a) Source # mapM :: Monad m => (a -> m b) -> FogCoord1 a -> m (FogCoord1 b) Source # sequence :: Monad m => FogCoord1 (m a) -> m (FogCoord1 a) Source #
UniformComponent a => Uniform (FogCoord1 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.Shaders.Uniform Methods uniform :: UniformLocation -> StateVar (FogCoord1 a) Source # uniformv :: UniformLocation -> GLsizei -> Ptr (FogCoord1 a) -> IO () Source #
FogCoordComponent a => FogCoord (FogCoord1 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods fogCoord :: FogCoord1 a -> IO () Source # fogCoordv :: Ptr (FogCoord1 a) -> IO () Source #
VertexAttribComponent a => VertexAttrib (FogCoord1 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods vertexAttrib :: IntegerHandling -> AttribLocation -> FogCoord1 a -> IO () Source # vertexAttribv :: IntegerHandling -> AttribLocation -> Ptr (FogCoord1 a) -> IO () Source #
Bounded a => Bounded (FogCoord1 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods minBound :: FogCoord1 a Source # maxBound :: FogCoord1 a Source #
Storable a => Storable (FogCoord1 a) Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

sizeOf :: FogCoord1 a -> Int Source #

alignment :: FogCoord1 a -> Int Source #

peekElemOff :: Ptr (FogCoord1 a) -> Int -> IO (FogCoord1 a) Source #

pokeElemOff :: Ptr (FogCoord1 a) -> Int -> FogCoord1 a -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO (FogCoord1 a) Source #

pokeByteOff :: Ptr b -> Int -> FogCoord1 a -> IO () Source #

peek :: Ptr (FogCoord1 a) -> IO (FogCoord1 a) Source #

poke :: Ptr (FogCoord1 a) -> FogCoord1 a -> IO () Source #

Ix a => Ix (FogCoord1 a) Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

range :: (FogCoord1 a, FogCoord1 a) -> [FogCoord1 a] Source #

index :: (FogCoord1 a, FogCoord1 a) -> FogCoord1 a -> Int Source #

unsafeIndex :: (FogCoord1 a, FogCoord1 a) -> FogCoord1 a -> Int Source #

inRange :: (FogCoord1 a, FogCoord1 a) -> FogCoord1 a -> Bool Source #

rangeSize :: (FogCoord1 a, FogCoord1 a) -> Int Source #

unsafeRangeSize :: (FogCoord1 a, FogCoord1 a) -> Int Source #

Read a => Read (FogCoord1 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods readsPrec :: Int -> ReadS (FogCoord1 a) Source # readList :: ReadS [FogCoord1 a] Source # readPrec :: ReadPrec (FogCoord1 a) Source # readListPrec :: ReadPrec [FogCoord1 a] Source #
Show a => Show (FogCoord1 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods showsPrec :: Int -> FogCoord1 a -> ShowS Source # show :: FogCoord1 a -> String Source # showList :: [FogCoord1 a] -> ShowS Source #
Eq a => Eq (FogCoord1 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods (==) :: FogCoord1 a -> FogCoord1 a -> Bool Source # (/=) :: FogCoord1 a -> FogCoord1 a -> Bool Source #
Ord a => Ord (FogCoord1 a) Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

compare :: FogCoord1 a -> FogCoord1 a -> Ordering Source #

(<) :: FogCoord1 a -> FogCoord1 a -> Bool Source #

(<=) :: FogCoord1 a -> FogCoord1 a -> Bool Source #

(>) :: FogCoord1 a -> FogCoord1 a -> Bool Source #

(>=) :: FogCoord1 a -> FogCoord1 a -> Bool Source #

max :: FogCoord1 a -> FogCoord1 a -> FogCoord1 a Source #

min :: FogCoord1 a -> FogCoord1 a -> FogCoord1 a Source #

## Color and Secondary Color

rgbaMode :: GettableStateVar Bool Source #

If `rgbaMode` contains `True`, the color buffers store RGBA value. If color indexes are stored, it contains `False`.

currentColor :: StateVar (Color4 GLfloat) Source #

class Color a where Source #

Change the current color.

Methods

color :: a -> IO () Source #

colorv :: Ptr a -> IO () Source #

#### Instances

Instances details

ColorComponent a => Color (Color3 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods color :: Color3 a -> IO () Source # colorv :: Ptr (Color3 a) -> IO () Source #
ColorComponent a => Color (Color4 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods color :: Color4 a -> IO () Source # colorv :: Ptr (Color4 a) -> IO () Source #

currentSecondaryColor :: StateVar (Color3 GLfloat) Source #

class SecondaryColor a where Source #

Change the current secondary color.

Methods

secondaryColor :: a -> IO () Source #

secondaryColorv :: Ptr a -> IO () Source #

#### Instances

Instances details

ColorComponent a => SecondaryColor (Color3 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods secondaryColor :: Color3 a -> IO () Source # secondaryColorv :: Ptr (Color3 a) -> IO () Source #

class ColorComponent a Source #

The class of all types which can be used as a color component.

Minimal complete definition

color3, color4, color3v, color4v, secondaryColor3, secondaryColor3v

#### Instances

Instances details

ColorComponent GLbyte Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods color3 :: GLbyte -> GLbyte -> GLbyte -> IO () color4 :: GLbyte -> GLbyte -> GLbyte -> GLbyte -> IO () color3v :: Ptr GLbyte -> IO () color4v :: Ptr GLbyte -> IO () secondaryColor3 :: GLbyte -> GLbyte -> GLbyte -> IO () secondaryColor3v :: Ptr GLbyte -> IO ()
ColorComponent GLdouble Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods color3 :: GLdouble -> GLdouble -> GLdouble -> IO () color4 :: GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO () color3v :: Ptr GLdouble -> IO () color4v :: Ptr GLdouble -> IO () secondaryColor3 :: GLdouble -> GLdouble -> GLdouble -> IO () secondaryColor3v :: Ptr GLdouble -> IO ()
ColorComponent GLfloat Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods color3 :: GLfloat -> GLfloat -> GLfloat -> IO () color4 :: GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO () color3v :: Ptr GLfloat -> IO () color4v :: Ptr GLfloat -> IO () secondaryColor3 :: GLfloat -> GLfloat -> GLfloat -> IO () secondaryColor3v :: Ptr GLfloat -> IO ()
ColorComponent GLint Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods color3 :: GLint -> GLint -> GLint -> IO () color4 :: GLint -> GLint -> GLint -> GLint -> IO () color3v :: Ptr GLint -> IO () color4v :: Ptr GLint -> IO () secondaryColor3 :: GLint -> GLint -> GLint -> IO () secondaryColor3v :: Ptr GLint -> IO ()
ColorComponent GLshort Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods color3 :: GLshort -> GLshort -> GLshort -> IO () color4 :: GLshort -> GLshort -> GLshort -> GLshort -> IO () color3v :: Ptr GLshort -> IO () color4v :: Ptr GLshort -> IO () secondaryColor3 :: GLshort -> GLshort -> GLshort -> IO () secondaryColor3v :: Ptr GLshort -> IO ()
ColorComponent GLubyte Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods color3 :: GLubyte -> GLubyte -> GLubyte -> IO () color4 :: GLubyte -> GLubyte -> GLubyte -> GLubyte -> IO () color3v :: Ptr GLubyte -> IO () color4v :: Ptr GLubyte -> IO () secondaryColor3 :: GLubyte -> GLubyte -> GLubyte -> IO () secondaryColor3v :: Ptr GLubyte -> IO ()
ColorComponent GLuint Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods color3 :: GLuint -> GLuint -> GLuint -> IO () color4 :: GLuint -> GLuint -> GLuint -> GLuint -> IO () color3v :: Ptr GLuint -> IO () color4v :: Ptr GLuint -> IO () secondaryColor3 :: GLuint -> GLuint -> GLuint -> IO () secondaryColor3v :: Ptr GLuint -> IO ()
ColorComponent GLushort Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods color3 :: GLushort -> GLushort -> GLushort -> IO () color4 :: GLushort -> GLushort -> GLushort -> GLushort -> IO () color3v :: Ptr GLushort -> IO () color4v :: Ptr GLushort -> IO () secondaryColor3 :: GLushort -> GLushort -> GLushort -> IO () secondaryColor3v :: Ptr GLushort -> IO ()

data Color3 a Source #

Constructors

Color3 !a !a !a |

#### Instances

Instances details

Applicative Color3 Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods pure :: a -> Color3 a Source # (<*>) :: Color3 (a -> b) -> Color3 a -> Color3 b Source # liftA2 :: (a -> b -> c) -> Color3 a -> Color3 b -> Color3 c Source # (*>) :: Color3 a -> Color3 b -> Color3 b Source # (<*) :: Color3 a -> Color3 b -> Color3 a Source #
Functor Color3 Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods fmap :: (a -> b) -> Color3 a -> Color3 b Source # (<$) :: a -> Color3 b -> Color3 a Source #
Foldable Color3 Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

fold :: Monoid m => Color3 m -> m Source #

foldMap :: Monoid m => (a -> m) -> Color3 a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Color3 a -> m Source #

foldr :: (a -> b -> b) -> b -> Color3 a -> b Source #

foldr' :: (a -> b -> b) -> b -> Color3 a -> b Source #

foldl :: (b -> a -> b) -> b -> Color3 a -> b Source #

foldl' :: (b -> a -> b) -> b -> Color3 a -> b Source #

foldr1 :: (a -> a -> a) -> Color3 a -> a Source #

foldl1 :: (a -> a -> a) -> Color3 a -> a Source #

toList :: Color3 a -> [a] Source #

null :: Color3 a -> Bool Source #

length :: Color3 a -> Int Source #

elem :: Eq a => a -> Color3 a -> Bool Source #

maximum :: Ord a => Color3 a -> a Source #

minimum :: Ord a => Color3 a -> a Source #

sum :: Num a => Color3 a -> a Source #

product :: Num a => Color3 a -> a Source #

Traversable Color3 Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods traverse :: Applicative f => (a -> f b) -> Color3 a -> f (Color3 b) Source # sequenceA :: Applicative f => Color3 (f a) -> f (Color3 a) Source # mapM :: Monad m => (a -> m b) -> Color3 a -> m (Color3 b) Source # sequence :: Monad m => Color3 (m a) -> m (Color3 a) Source #
UniformComponent a => Uniform (Color3 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.Shaders.Uniform Methods uniform :: UniformLocation -> StateVar (Color3 a) Source # uniformv :: UniformLocation -> GLsizei -> Ptr (Color3 a) -> IO () Source #
ColorComponent a => Color (Color3 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods color :: Color3 a -> IO () Source # colorv :: Ptr (Color3 a) -> IO () Source #
ColorComponent a => SecondaryColor (Color3 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods secondaryColor :: Color3 a -> IO () Source # secondaryColorv :: Ptr (Color3 a) -> IO () Source #
VertexAttribComponent a => VertexAttrib (Color3 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods vertexAttrib :: IntegerHandling -> AttribLocation -> Color3 a -> IO () Source # vertexAttribv :: IntegerHandling -> AttribLocation -> Ptr (Color3 a) -> IO () Source #
Bounded a => Bounded (Color3 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods minBound :: Color3 a Source # maxBound :: Color3 a Source #
Storable a => Storable (Color3 a) Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

sizeOf :: Color3 a -> Int Source #

alignment :: Color3 a -> Int Source #

peekElemOff :: Ptr (Color3 a) -> Int -> IO (Color3 a) Source #

pokeElemOff :: Ptr (Color3 a) -> Int -> Color3 a -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO (Color3 a) Source #

pokeByteOff :: Ptr b -> Int -> Color3 a -> IO () Source #

peek :: Ptr (Color3 a) -> IO (Color3 a) Source #

poke :: Ptr (Color3 a) -> Color3 a -> IO () Source #

Ix a => Ix (Color3 a) Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

range :: (Color3 a, Color3 a) -> [Color3 a] Source #

index :: (Color3 a, Color3 a) -> Color3 a -> Int Source #

unsafeIndex :: (Color3 a, Color3 a) -> Color3 a -> Int Source #

inRange :: (Color3 a, Color3 a) -> Color3 a -> Bool Source #

rangeSize :: (Color3 a, Color3 a) -> Int Source #

unsafeRangeSize :: (Color3 a, Color3 a) -> Int Source #

Read a => Read (Color3 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods readsPrec :: Int -> ReadS (Color3 a) Source # readList :: ReadS [Color3 a] Source # readPrec :: ReadPrec (Color3 a) Source # readListPrec :: ReadPrec [Color3 a] Source #
Show a => Show (Color3 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods showsPrec :: Int -> Color3 a -> ShowS Source # show :: Color3 a -> String Source # showList :: [Color3 a] -> ShowS Source #
Eq a => Eq (Color3 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods (==) :: Color3 a -> Color3 a -> Bool Source # (/=) :: Color3 a -> Color3 a -> Bool Source #
Ord a => Ord (Color3 a) Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

compare :: Color3 a -> Color3 a -> Ordering Source #

(<) :: Color3 a -> Color3 a -> Bool Source #

(<=) :: Color3 a -> Color3 a -> Bool Source #

(>) :: Color3 a -> Color3 a -> Bool Source #

(>=) :: Color3 a -> Color3 a -> Bool Source #

max :: Color3 a -> Color3 a -> Color3 a Source #

min :: Color3 a -> Color3 a -> Color3 a Source #

data Color4 a Source #

A fully-fledged RGBA color.

Constructors

Color4 !a !a !a !a |

#### Instances

Instances details

ControlPoint Color4 Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.ControlPoint

Methods

map1Target :: Domain d => Color4 d -> GLenum

map2Target :: Domain d => Color4 d -> GLenum

enableCap1 :: Domain d => Color4 d -> EnableCap

enableCap2 :: Domain d => Color4 d -> EnableCap

numComponents :: Domain d => Color4 d -> Stride

peekControlPoint :: Domain d => Ptr (Color4 d) -> IO (Color4 d)

pokeControlPoint :: Domain d => Ptr (Color4 d) -> Color4 d -> IO ()

Applicative Color4 Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods pure :: a -> Color4 a Source # (<*>) :: Color4 (a -> b) -> Color4 a -> Color4 b Source # liftA2 :: (a -> b -> c) -> Color4 a -> Color4 b -> Color4 c Source # (*>) :: Color4 a -> Color4 b -> Color4 b Source # (<*) :: Color4 a -> Color4 b -> Color4 a Source #
Functor Color4 Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods fmap :: (a -> b) -> Color4 a -> Color4 b Source # (<$) :: a -> Color4 b -> Color4 a Source #
Foldable Color4 Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

fold :: Monoid m => Color4 m -> m Source #

foldMap :: Monoid m => (a -> m) -> Color4 a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Color4 a -> m Source #

foldr :: (a -> b -> b) -> b -> Color4 a -> b Source #

foldr' :: (a -> b -> b) -> b -> Color4 a -> b Source #

foldl :: (b -> a -> b) -> b -> Color4 a -> b Source #

foldl' :: (b -> a -> b) -> b -> Color4 a -> b Source #

foldr1 :: (a -> a -> a) -> Color4 a -> a Source #

foldl1 :: (a -> a -> a) -> Color4 a -> a Source #

toList :: Color4 a -> [a] Source #

null :: Color4 a -> Bool Source #

length :: Color4 a -> Int Source #

elem :: Eq a => a -> Color4 a -> Bool Source #

maximum :: Ord a => Color4 a -> a Source #

minimum :: Ord a => Color4 a -> a Source #

sum :: Num a => Color4 a -> a Source #

product :: Num a => Color4 a -> a Source #

Traversable Color4 Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods traverse :: Applicative f => (a -> f b) -> Color4 a -> f (Color4 b) Source # sequenceA :: Applicative f => Color4 (f a) -> f (Color4 a) Source # mapM :: Monad m => (a -> m b) -> Color4 a -> m (Color4 b) Source # sequence :: Monad m => Color4 (m a) -> m (Color4 a) Source #
UniformComponent a => Uniform (Color4 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.Shaders.Uniform Methods uniform :: UniformLocation -> StateVar (Color4 a) Source # uniformv :: UniformLocation -> GLsizei -> Ptr (Color4 a) -> IO () Source #
ColorComponent a => Color (Color4 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods color :: Color4 a -> IO () Source # colorv :: Ptr (Color4 a) -> IO () Source #
VertexAttribComponent a => VertexAttrib (Color4 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods vertexAttrib :: IntegerHandling -> AttribLocation -> Color4 a -> IO () Source # vertexAttribv :: IntegerHandling -> AttribLocation -> Ptr (Color4 a) -> IO () Source #
Bounded a => Bounded (Color4 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods minBound :: Color4 a Source # maxBound :: Color4 a Source #
Storable a => Storable (Color4 a) Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

sizeOf :: Color4 a -> Int Source #

alignment :: Color4 a -> Int Source #

peekElemOff :: Ptr (Color4 a) -> Int -> IO (Color4 a) Source #

pokeElemOff :: Ptr (Color4 a) -> Int -> Color4 a -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO (Color4 a) Source #

pokeByteOff :: Ptr b -> Int -> Color4 a -> IO () Source #

peek :: Ptr (Color4 a) -> IO (Color4 a) Source #

poke :: Ptr (Color4 a) -> Color4 a -> IO () Source #

Ix a => Ix (Color4 a) Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

range :: (Color4 a, Color4 a) -> [Color4 a] Source #

index :: (Color4 a, Color4 a) -> Color4 a -> Int Source #

unsafeIndex :: (Color4 a, Color4 a) -> Color4 a -> Int Source #

inRange :: (Color4 a, Color4 a) -> Color4 a -> Bool Source #

rangeSize :: (Color4 a, Color4 a) -> Int Source #

unsafeRangeSize :: (Color4 a, Color4 a) -> Int Source #

Read a => Read (Color4 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods readsPrec :: Int -> ReadS (Color4 a) Source # readList :: ReadS [Color4 a] Source # readPrec :: ReadPrec (Color4 a) Source # readListPrec :: ReadPrec [Color4 a] Source #
Show a => Show (Color4 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods showsPrec :: Int -> Color4 a -> ShowS Source # show :: Color4 a -> String Source # showList :: [Color4 a] -> ShowS Source #
Eq a => Eq (Color4 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods (==) :: Color4 a -> Color4 a -> Bool Source # (/=) :: Color4 a -> Color4 a -> Bool Source #
Ord a => Ord (Color4 a) Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

compare :: Color4 a -> Color4 a -> Ordering Source #

(<) :: Color4 a -> Color4 a -> Bool Source #

(<=) :: Color4 a -> Color4 a -> Bool Source #

(>) :: Color4 a -> Color4 a -> Bool Source #

(>=) :: Color4 a -> Color4 a -> Bool Source #

max :: Color4 a -> Color4 a -> Color4 a Source #

min :: Color4 a -> Color4 a -> Color4 a Source #

currentIndex :: StateVar (Index1 GLint) Source #

class Index a where Source #

Change the current color index.

Methods

index :: a -> IO () Source #

indexv :: Ptr a -> IO () Source #

#### Instances

Instances details

IndexComponent a => Index (Index1 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods index :: Index1 a -> IO () Source # indexv :: Ptr (Index1 a) -> IO () Source #

class IndexComponent a Source #

The class of all types which can be used as a color index.

Minimal complete definition

index1, index1v

#### Instances

Instances details

IndexComponent GLdouble Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods index1 :: GLdouble -> IO () index1v :: Ptr GLdouble -> IO ()
IndexComponent GLfloat Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods index1 :: GLfloat -> IO () index1v :: Ptr GLfloat -> IO ()
IndexComponent GLint Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods index1 :: GLint -> IO () index1v :: Ptr GLint -> IO ()
IndexComponent GLshort Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods index1 :: GLshort -> IO () index1v :: Ptr GLshort -> IO ()
IndexComponent GLubyte Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods index1 :: GLubyte -> IO () index1v :: Ptr GLubyte -> IO ()

newtype Index1 a Source #

A color index.

Constructors

Index1 a |

#### Instances

Instances details

ControlPoint Index1 Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.ControlPoint

Methods

map1Target :: Domain d => Index1 d -> GLenum

map2Target :: Domain d => Index1 d -> GLenum

enableCap1 :: Domain d => Index1 d -> EnableCap

enableCap2 :: Domain d => Index1 d -> EnableCap

numComponents :: Domain d => Index1 d -> Stride

peekControlPoint :: Domain d => Ptr (Index1 d) -> IO (Index1 d)

pokeControlPoint :: Domain d => Ptr (Index1 d) -> Index1 d -> IO ()

Applicative Index1 Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods pure :: a -> Index1 a Source # (<*>) :: Index1 (a -> b) -> Index1 a -> Index1 b Source # liftA2 :: (a -> b -> c) -> Index1 a -> Index1 b -> Index1 c Source # (*>) :: Index1 a -> Index1 b -> Index1 b Source # (<*) :: Index1 a -> Index1 b -> Index1 a Source #
Functor Index1 Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods fmap :: (a -> b) -> Index1 a -> Index1 b Source # (<$) :: a -> Index1 b -> Index1 a Source #
Foldable Index1 Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

fold :: Monoid m => Index1 m -> m Source #

foldMap :: Monoid m => (a -> m) -> Index1 a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Index1 a -> m Source #

foldr :: (a -> b -> b) -> b -> Index1 a -> b Source #

foldr' :: (a -> b -> b) -> b -> Index1 a -> b Source #

foldl :: (b -> a -> b) -> b -> Index1 a -> b Source #

foldl' :: (b -> a -> b) -> b -> Index1 a -> b Source #

foldr1 :: (a -> a -> a) -> Index1 a -> a Source #

foldl1 :: (a -> a -> a) -> Index1 a -> a Source #

toList :: Index1 a -> [a] Source #

null :: Index1 a -> Bool Source #

length :: Index1 a -> Int Source #

elem :: Eq a => a -> Index1 a -> Bool Source #

maximum :: Ord a => Index1 a -> a Source #

minimum :: Ord a => Index1 a -> a Source #

sum :: Num a => Index1 a -> a Source #

product :: Num a => Index1 a -> a Source #

Traversable Index1 Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods traverse :: Applicative f => (a -> f b) -> Index1 a -> f (Index1 b) Source # sequenceA :: Applicative f => Index1 (f a) -> f (Index1 a) Source # mapM :: Monad m => (a -> m b) -> Index1 a -> m (Index1 b) Source # sequence :: Monad m => Index1 (m a) -> m (Index1 a) Source #
UniformComponent a => Uniform (Index1 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.Shaders.Uniform Methods uniform :: UniformLocation -> StateVar (Index1 a) Source # uniformv :: UniformLocation -> GLsizei -> Ptr (Index1 a) -> IO () Source #
IndexComponent a => Index (Index1 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods index :: Index1 a -> IO () Source # indexv :: Ptr (Index1 a) -> IO () Source #
VertexAttribComponent a => VertexAttrib (Index1 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods vertexAttrib :: IntegerHandling -> AttribLocation -> Index1 a -> IO () Source # vertexAttribv :: IntegerHandling -> AttribLocation -> Ptr (Index1 a) -> IO () Source #
Bounded a => Bounded (Index1 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods minBound :: Index1 a Source # maxBound :: Index1 a Source #
Storable a => Storable (Index1 a) Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

sizeOf :: Index1 a -> Int Source #

alignment :: Index1 a -> Int Source #

peekElemOff :: Ptr (Index1 a) -> Int -> IO (Index1 a) Source #

pokeElemOff :: Ptr (Index1 a) -> Int -> Index1 a -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO (Index1 a) Source #

pokeByteOff :: Ptr b -> Int -> Index1 a -> IO () Source #

peek :: Ptr (Index1 a) -> IO (Index1 a) Source #

poke :: Ptr (Index1 a) -> Index1 a -> IO () Source #

Ix a => Ix (Index1 a) Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

range :: (Index1 a, Index1 a) -> [Index1 a] Source #

index :: (Index1 a, Index1 a) -> Index1 a -> Int Source #

unsafeIndex :: (Index1 a, Index1 a) -> Index1 a -> Int Source #

inRange :: (Index1 a, Index1 a) -> Index1 a -> Bool Source #

rangeSize :: (Index1 a, Index1 a) -> Int Source #

unsafeRangeSize :: (Index1 a, Index1 a) -> Int Source #

Read a => Read (Index1 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods readsPrec :: Int -> ReadS (Index1 a) Source # readList :: ReadS [Index1 a] Source # readPrec :: ReadPrec (Index1 a) Source # readListPrec :: ReadPrec [Index1 a] Source #
Show a => Show (Index1 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods showsPrec :: Int -> Index1 a -> ShowS Source # show :: Index1 a -> String Source # showList :: [Index1 a] -> ShowS Source #
Eq a => Eq (Index1 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes Methods (==) :: Index1 a -> Index1 a -> Bool Source # (/=) :: Index1 a -> Index1 a -> Bool Source #
Ord a => Ord (Index1 a) Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

compare :: Index1 a -> Index1 a -> Ordering Source #

(<) :: Index1 a -> Index1 a -> Bool Source #

(<=) :: Index1 a -> Index1 a -> Bool Source #

(>) :: Index1 a -> Index1 a -> Bool Source #

(>=) :: Index1 a -> Index1 a -> Bool Source #

max :: Index1 a -> Index1 a -> Index1 a Source #

min :: Index1 a -> Index1 a -> Index1 a Source #

# Generic Vertex Attributes

data IntegerHandling Source #

Constructors

ToFloat |
ToNormalizedFloat |
KeepIntegral |

#### Instances

Instances details

Show IntegerHandling Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods showsPrec :: Int -> IntegerHandling -> ShowS Source # show :: IntegerHandling -> String Source # showList :: [IntegerHandling] -> ShowS Source #
Eq IntegerHandling Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods (==) :: IntegerHandling -> IntegerHandling -> Bool Source # (/=) :: IntegerHandling -> IntegerHandling -> Bool Source #
Ord IntegerHandling Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

Methods

compare :: IntegerHandling -> IntegerHandling -> Ordering Source #

(<) :: IntegerHandling -> IntegerHandling -> Bool Source #

(<=) :: IntegerHandling -> IntegerHandling -> Bool Source #

(>) :: IntegerHandling -> IntegerHandling -> Bool Source #

(>=) :: IntegerHandling -> IntegerHandling -> Bool Source #

max :: IntegerHandling -> IntegerHandling -> IntegerHandling Source #

min :: IntegerHandling -> IntegerHandling -> IntegerHandling Source #

newtype AttribLocation Source #

Constructors

AttribLocation GLuint |

#### Instances

Instances details

Show AttribLocation Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.QueryUtils.VertexAttrib Methods showsPrec :: Int -> AttribLocation -> ShowS Source # show :: AttribLocation -> String Source # showList :: [AttribLocation] -> ShowS Source #
Eq AttribLocation Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.QueryUtils.VertexAttrib Methods (==) :: AttribLocation -> AttribLocation -> Bool Source # (/=) :: AttribLocation -> AttribLocation -> Bool Source #
Ord AttribLocation Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.QueryUtils.VertexAttrib

Methods

compare :: AttribLocation -> AttribLocation -> Ordering Source #

(<) :: AttribLocation -> AttribLocation -> Bool Source #

(<=) :: AttribLocation -> AttribLocation -> Bool Source #

(>) :: AttribLocation -> AttribLocation -> Bool Source #

(>=) :: AttribLocation -> AttribLocation -> Bool Source #

max :: AttribLocation -> AttribLocation -> AttribLocation Source #

min :: AttribLocation -> AttribLocation -> AttribLocation Source #

currentVertexAttrib :: AttribLocation -> StateVar (Vertex4 GLfloat) Source #

currentVertexAttribI :: AttribLocation -> StateVar (Vertex4 GLint) Source #

currentVertexAttribIu :: AttribLocation -> StateVar (Vertex4 GLuint) Source #

class VertexAttrib a where Source #

Methods

vertexAttrib :: IntegerHandling -> AttribLocation -> a -> IO () Source #

vertexAttribv :: IntegerHandling -> AttribLocation -> Ptr a -> IO () Source #

#### Instances

Instances details

VertexAttribComponent a => VertexAttrib (Vector1 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods vertexAttrib :: IntegerHandling -> AttribLocation -> Vector1 a -> IO () Source # vertexAttribv :: IntegerHandling -> AttribLocation -> Ptr (Vector1 a) -> IO () Source #
VertexAttribComponent a => VertexAttrib (Vector2 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods vertexAttrib :: IntegerHandling -> AttribLocation -> Vector2 a -> IO () Source # vertexAttribv :: IntegerHandling -> AttribLocation -> Ptr (Vector2 a) -> IO () Source #
VertexAttribComponent a => VertexAttrib (Vector3 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods vertexAttrib :: IntegerHandling -> AttribLocation -> Vector3 a -> IO () Source # vertexAttribv :: IntegerHandling -> AttribLocation -> Ptr (Vector3 a) -> IO () Source #
VertexAttribComponent a => VertexAttrib (Vector4 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods vertexAttrib :: IntegerHandling -> AttribLocation -> Vector4 a -> IO () Source # vertexAttribv :: IntegerHandling -> AttribLocation -> Ptr (Vector4 a) -> IO () Source #
VertexAttribComponent a => VertexAttrib (Vertex1 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods vertexAttrib :: IntegerHandling -> AttribLocation -> Vertex1 a -> IO () Source # vertexAttribv :: IntegerHandling -> AttribLocation -> Ptr (Vertex1 a) -> IO () Source #
VertexAttribComponent a => VertexAttrib (Vertex2 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods vertexAttrib :: IntegerHandling -> AttribLocation -> Vertex2 a -> IO () Source # vertexAttribv :: IntegerHandling -> AttribLocation -> Ptr (Vertex2 a) -> IO () Source #
VertexAttribComponent a => VertexAttrib (Vertex3 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods vertexAttrib :: IntegerHandling -> AttribLocation -> Vertex3 a -> IO () Source # vertexAttribv :: IntegerHandling -> AttribLocation -> Ptr (Vertex3 a) -> IO () Source #
VertexAttribComponent a => VertexAttrib (Vertex4 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods vertexAttrib :: IntegerHandling -> AttribLocation -> Vertex4 a -> IO () Source # vertexAttribv :: IntegerHandling -> AttribLocation -> Ptr (Vertex4 a) -> IO () Source #
VertexAttribComponent a => VertexAttrib (Color3 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods vertexAttrib :: IntegerHandling -> AttribLocation -> Color3 a -> IO () Source # vertexAttribv :: IntegerHandling -> AttribLocation -> Ptr (Color3 a) -> IO () Source #
VertexAttribComponent a => VertexAttrib (Color4 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods vertexAttrib :: IntegerHandling -> AttribLocation -> Color4 a -> IO () Source # vertexAttribv :: IntegerHandling -> AttribLocation -> Ptr (Color4 a) -> IO () Source #
VertexAttribComponent a => VertexAttrib (FogCoord1 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods vertexAttrib :: IntegerHandling -> AttribLocation -> FogCoord1 a -> IO () Source # vertexAttribv :: IntegerHandling -> AttribLocation -> Ptr (FogCoord1 a) -> IO () Source #
VertexAttribComponent a => VertexAttrib (Index1 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods vertexAttrib :: IntegerHandling -> AttribLocation -> Index1 a -> IO () Source # vertexAttribv :: IntegerHandling -> AttribLocation -> Ptr (Index1 a) -> IO () Source #
VertexAttribComponent a => VertexAttrib (Normal3 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods vertexAttrib :: IntegerHandling -> AttribLocation -> Normal3 a -> IO () Source # vertexAttribv :: IntegerHandling -> AttribLocation -> Ptr (Normal3 a) -> IO () Source #
VertexAttribComponent a => VertexAttrib (TexCoord1 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods vertexAttrib :: IntegerHandling -> AttribLocation -> TexCoord1 a -> IO () Source # vertexAttribv :: IntegerHandling -> AttribLocation -> Ptr (TexCoord1 a) -> IO () Source #
VertexAttribComponent a => VertexAttrib (TexCoord2 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods vertexAttrib :: IntegerHandling -> AttribLocation -> TexCoord2 a -> IO () Source # vertexAttribv :: IntegerHandling -> AttribLocation -> Ptr (TexCoord2 a) -> IO () Source #
VertexAttribComponent a => VertexAttrib (TexCoord3 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods vertexAttrib :: IntegerHandling -> AttribLocation -> TexCoord3 a -> IO () Source # vertexAttribv :: IntegerHandling -> AttribLocation -> Ptr (TexCoord3 a) -> IO () Source #
VertexAttribComponent a => VertexAttrib (TexCoord4 a) Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.VertexSpec Methods vertexAttrib :: IntegerHandling -> AttribLocation -> TexCoord4 a -> IO () Source # vertexAttribv :: IntegerHandling -> AttribLocation -> Ptr (TexCoord4 a) -> IO () Source #

class (Storable a, Num a) => VertexAttribComponent a where Source #

The class of all types which can be used as a generic vertex attribute. NOTE: Do not use the methods of this class directly, they were only exported by accident and will be hidden in future versions of this package.

Minimal complete definition

vertexAttrib4v, vertexAttrib4Nv, vertexAttrib4Iv

Methods

vertexAttrib1 :: AttribLocation -> a -> IO () Source #

vertexAttrib2 :: AttribLocation -> a -> a -> IO () Source #

vertexAttrib3 :: AttribLocation -> a -> a -> a -> IO () Source #

vertexAttrib4 :: AttribLocation -> a -> a -> a -> a -> IO () Source #

vertexAttrib1N :: AttribLocation -> a -> IO () Source #

vertexAttrib2N :: AttribLocation -> a -> a -> IO () Source #

vertexAttrib3N :: AttribLocation -> a -> a -> a -> IO () Source #

vertexAttrib4N :: AttribLocation -> a -> a -> a -> a -> IO () Source #

vertexAttrib1I :: AttribLocation -> a -> IO () Source #

vertexAttrib2I :: AttribLocation -> a -> a -> IO () Source #

vertexAttrib3I :: AttribLocation -> a -> a -> a -> IO () Source #

vertexAttrib4I :: AttribLocation -> a -> a -> a -> a -> IO () Source #

vertexAttrib1v :: AttribLocation -> Ptr a -> IO () Source #

vertexAttrib2v :: AttribLocation -> Ptr a -> IO () Source #

vertexAttrib3v :: AttribLocation -> Ptr a -> IO () Source #

vertexAttrib4v :: AttribLocation -> Ptr a -> IO () Source #

vertexAttrib1Nv :: AttribLocation -> Ptr a -> IO () Source #

vertexAttrib2Nv :: AttribLocation -> Ptr a -> IO () Source #

vertexAttrib3Nv :: AttribLocation -> Ptr a -> IO () Source #

vertexAttrib4Nv :: AttribLocation -> Ptr a -> IO () Source #

vertexAttrib1Iv :: AttribLocation -> Ptr a -> IO () Source #

vertexAttrib2Iv :: AttribLocation -> Ptr a -> IO () Source #

vertexAttrib3Iv :: AttribLocation -> Ptr a -> IO () Source #

vertexAttrib4Iv :: AttribLocation -> Ptr a -> IO () Source #

#### Instances

Instances details

VertexAttribComponent GLbyte Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

Methods

vertexAttrib1 :: AttribLocation -> GLbyte -> IO () Source #

vertexAttrib2 :: AttribLocation -> GLbyte -> GLbyte -> IO () Source #

vertexAttrib3 :: AttribLocation -> GLbyte -> GLbyte -> GLbyte -> IO () Source #

vertexAttrib4 :: AttribLocation -> GLbyte -> GLbyte -> GLbyte -> GLbyte -> IO () Source #

vertexAttrib1N :: AttribLocation -> GLbyte -> IO () Source #

vertexAttrib2N :: AttribLocation -> GLbyte -> GLbyte -> IO () Source #

vertexAttrib3N :: AttribLocation -> GLbyte -> GLbyte -> GLbyte -> IO () Source #

vertexAttrib4N :: AttribLocation -> GLbyte -> GLbyte -> GLbyte -> GLbyte -> IO () Source #

vertexAttrib1I :: AttribLocation -> GLbyte -> IO () Source #

vertexAttrib2I :: AttribLocation -> GLbyte -> GLbyte -> IO () Source #

vertexAttrib3I :: AttribLocation -> GLbyte -> GLbyte -> GLbyte -> IO () Source #

vertexAttrib4I :: AttribLocation -> GLbyte -> GLbyte -> GLbyte -> GLbyte -> IO () Source #

vertexAttrib1v :: AttribLocation -> Ptr GLbyte -> IO () Source #

vertexAttrib2v :: AttribLocation -> Ptr GLbyte -> IO () Source #

vertexAttrib3v :: AttribLocation -> Ptr GLbyte -> IO () Source #

vertexAttrib4v :: AttribLocation -> Ptr GLbyte -> IO () Source #

vertexAttrib1Nv :: AttribLocation -> Ptr GLbyte -> IO () Source #

vertexAttrib2Nv :: AttribLocation -> Ptr GLbyte -> IO () Source #

vertexAttrib3Nv :: AttribLocation -> Ptr GLbyte -> IO () Source #

vertexAttrib4Nv :: AttribLocation -> Ptr GLbyte -> IO () Source #

vertexAttrib1Iv :: AttribLocation -> Ptr GLbyte -> IO () Source #

vertexAttrib2Iv :: AttribLocation -> Ptr GLbyte -> IO () Source #

vertexAttrib3Iv :: AttribLocation -> Ptr GLbyte -> IO () Source #

vertexAttrib4Iv :: AttribLocation -> Ptr GLbyte -> IO () Source #

VertexAttribComponent GLdouble Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

Methods

vertexAttrib1 :: AttribLocation -> GLdouble -> IO () Source #

vertexAttrib2 :: AttribLocation -> GLdouble -> GLdouble -> IO () Source #

vertexAttrib3 :: AttribLocation -> GLdouble -> GLdouble -> GLdouble -> IO () Source #

vertexAttrib4 :: AttribLocation -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO () Source #

vertexAttrib1N :: AttribLocation -> GLdouble -> IO () Source #

vertexAttrib2N :: AttribLocation -> GLdouble -> GLdouble -> IO () Source #

vertexAttrib3N :: AttribLocation -> GLdouble -> GLdouble -> GLdouble -> IO () Source #

vertexAttrib4N :: AttribLocation -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO () Source #

vertexAttrib1I :: AttribLocation -> GLdouble -> IO () Source #

vertexAttrib2I :: AttribLocation -> GLdouble -> GLdouble -> IO () Source #

vertexAttrib3I :: AttribLocation -> GLdouble -> GLdouble -> GLdouble -> IO () Source #

vertexAttrib4I :: AttribLocation -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO () Source #

vertexAttrib1v :: AttribLocation -> Ptr GLdouble -> IO () Source #

vertexAttrib2v :: AttribLocation -> Ptr GLdouble -> IO () Source #

vertexAttrib3v :: AttribLocation -> Ptr GLdouble -> IO () Source #

vertexAttrib4v :: AttribLocation -> Ptr GLdouble -> IO () Source #

vertexAttrib1Nv :: AttribLocation -> Ptr GLdouble -> IO () Source #

vertexAttrib2Nv :: AttribLocation -> Ptr GLdouble -> IO () Source #

vertexAttrib3Nv :: AttribLocation -> Ptr GLdouble -> IO () Source #

vertexAttrib4Nv :: AttribLocation -> Ptr GLdouble -> IO () Source #

vertexAttrib1Iv :: AttribLocation -> Ptr GLdouble -> IO () Source #

vertexAttrib2Iv :: AttribLocation -> Ptr GLdouble -> IO () Source #

vertexAttrib3Iv :: AttribLocation -> Ptr GLdouble -> IO () Source #

vertexAttrib4Iv :: AttribLocation -> Ptr GLdouble -> IO () Source #

VertexAttribComponent GLfloat Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

Methods

vertexAttrib1 :: AttribLocation -> GLfloat -> IO () Source #

vertexAttrib2 :: AttribLocation -> GLfloat -> GLfloat -> IO () Source #

vertexAttrib3 :: AttribLocation -> GLfloat -> GLfloat -> GLfloat -> IO () Source #

vertexAttrib4 :: AttribLocation -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO () Source #

vertexAttrib1N :: AttribLocation -> GLfloat -> IO () Source #

vertexAttrib2N :: AttribLocation -> GLfloat -> GLfloat -> IO () Source #

vertexAttrib3N :: AttribLocation -> GLfloat -> GLfloat -> GLfloat -> IO () Source #

vertexAttrib4N :: AttribLocation -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO () Source #

vertexAttrib1I :: AttribLocation -> GLfloat -> IO () Source #

vertexAttrib2I :: AttribLocation -> GLfloat -> GLfloat -> IO () Source #

vertexAttrib3I :: AttribLocation -> GLfloat -> GLfloat -> GLfloat -> IO () Source #

vertexAttrib4I :: AttribLocation -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO () Source #

vertexAttrib1v :: AttribLocation -> Ptr GLfloat -> IO () Source #

vertexAttrib2v :: AttribLocation -> Ptr GLfloat -> IO () Source #

vertexAttrib3v :: AttribLocation -> Ptr GLfloat -> IO () Source #

vertexAttrib4v :: AttribLocation -> Ptr GLfloat -> IO () Source #

vertexAttrib1Nv :: AttribLocation -> Ptr GLfloat -> IO () Source #

vertexAttrib2Nv :: AttribLocation -> Ptr GLfloat -> IO () Source #

vertexAttrib3Nv :: AttribLocation -> Ptr GLfloat -> IO () Source #

vertexAttrib4Nv :: AttribLocation -> Ptr GLfloat -> IO () Source #

vertexAttrib1Iv :: AttribLocation -> Ptr GLfloat -> IO () Source #

vertexAttrib2Iv :: AttribLocation -> Ptr GLfloat -> IO () Source #

vertexAttrib3Iv :: AttribLocation -> Ptr GLfloat -> IO () Source #

vertexAttrib4Iv :: AttribLocation -> Ptr GLfloat -> IO () Source #

VertexAttribComponent GLint Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

Methods

vertexAttrib1 :: AttribLocation -> GLint -> IO () Source #

vertexAttrib2 :: AttribLocation -> GLint -> GLint -> IO () Source #

vertexAttrib3 :: AttribLocation -> GLint -> GLint -> GLint -> IO () Source #

vertexAttrib4 :: AttribLocation -> GLint -> GLint -> GLint -> GLint -> IO () Source #

vertexAttrib1N :: AttribLocation -> GLint -> IO () Source #

vertexAttrib2N :: AttribLocation -> GLint -> GLint -> IO () Source #

vertexAttrib3N :: AttribLocation -> GLint -> GLint -> GLint -> IO () Source #

vertexAttrib4N :: AttribLocation -> GLint -> GLint -> GLint -> GLint -> IO () Source #

vertexAttrib1I :: AttribLocation -> GLint -> IO () Source #

vertexAttrib2I :: AttribLocation -> GLint -> GLint -> IO () Source #

vertexAttrib3I :: AttribLocation -> GLint -> GLint -> GLint -> IO () Source #

vertexAttrib4I :: AttribLocation -> GLint -> GLint -> GLint -> GLint -> IO () Source #

vertexAttrib1v :: AttribLocation -> Ptr GLint -> IO () Source #

vertexAttrib2v :: AttribLocation -> Ptr GLint -> IO () Source #

vertexAttrib3v :: AttribLocation -> Ptr GLint -> IO () Source #

vertexAttrib4v :: AttribLocation -> Ptr GLint -> IO () Source #

vertexAttrib1Nv :: AttribLocation -> Ptr GLint -> IO () Source #

vertexAttrib2Nv :: AttribLocation -> Ptr GLint -> IO () Source #

vertexAttrib3Nv :: AttribLocation -> Ptr GLint -> IO () Source #

vertexAttrib4Nv :: AttribLocation -> Ptr GLint -> IO () Source #

vertexAttrib1Iv :: AttribLocation -> Ptr GLint -> IO () Source #

vertexAttrib2Iv :: AttribLocation -> Ptr GLint -> IO () Source #

vertexAttrib3Iv :: AttribLocation -> Ptr GLint -> IO () Source #

vertexAttrib4Iv :: AttribLocation -> Ptr GLint -> IO () Source #

VertexAttribComponent GLshort Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

Methods

vertexAttrib1 :: AttribLocation -> GLshort -> IO () Source #

vertexAttrib2 :: AttribLocation -> GLshort -> GLshort -> IO () Source #

vertexAttrib3 :: AttribLocation -> GLshort -> GLshort -> GLshort -> IO () Source #

vertexAttrib4 :: AttribLocation -> GLshort -> GLshort -> GLshort -> GLshort -> IO () Source #

vertexAttrib1N :: AttribLocation -> GLshort -> IO () Source #

vertexAttrib2N :: AttribLocation -> GLshort -> GLshort -> IO () Source #

vertexAttrib3N :: AttribLocation -> GLshort -> GLshort -> GLshort -> IO () Source #

vertexAttrib4N :: AttribLocation -> GLshort -> GLshort -> GLshort -> GLshort -> IO () Source #

vertexAttrib1I :: AttribLocation -> GLshort -> IO () Source #

vertexAttrib2I :: AttribLocation -> GLshort -> GLshort -> IO () Source #

vertexAttrib3I :: AttribLocation -> GLshort -> GLshort -> GLshort -> IO () Source #

vertexAttrib4I :: AttribLocation -> GLshort -> GLshort -> GLshort -> GLshort -> IO () Source #

vertexAttrib1v :: AttribLocation -> Ptr GLshort -> IO () Source #

vertexAttrib2v :: AttribLocation -> Ptr GLshort -> IO () Source #

vertexAttrib3v :: AttribLocation -> Ptr GLshort -> IO () Source #

vertexAttrib4v :: AttribLocation -> Ptr GLshort -> IO () Source #

vertexAttrib1Nv :: AttribLocation -> Ptr GLshort -> IO () Source #

vertexAttrib2Nv :: AttribLocation -> Ptr GLshort -> IO () Source #

vertexAttrib3Nv :: AttribLocation -> Ptr GLshort -> IO () Source #

vertexAttrib4Nv :: AttribLocation -> Ptr GLshort -> IO () Source #

vertexAttrib1Iv :: AttribLocation -> Ptr GLshort -> IO () Source #

vertexAttrib2Iv :: AttribLocation -> Ptr GLshort -> IO () Source #

vertexAttrib3Iv :: AttribLocation -> Ptr GLshort -> IO () Source #

vertexAttrib4Iv :: AttribLocation -> Ptr GLshort -> IO () Source #

VertexAttribComponent GLubyte Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

Methods

vertexAttrib1 :: AttribLocation -> GLubyte -> IO () Source #

vertexAttrib2 :: AttribLocation -> GLubyte -> GLubyte -> IO () Source #

vertexAttrib3 :: AttribLocation -> GLubyte -> GLubyte -> GLubyte -> IO () Source #

vertexAttrib4 :: AttribLocation -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> IO () Source #

vertexAttrib1N :: AttribLocation -> GLubyte -> IO () Source #

vertexAttrib2N :: AttribLocation -> GLubyte -> GLubyte -> IO () Source #

vertexAttrib3N :: AttribLocation -> GLubyte -> GLubyte -> GLubyte -> IO () Source #

vertexAttrib4N :: AttribLocation -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> IO () Source #

vertexAttrib1I :: AttribLocation -> GLubyte -> IO () Source #

vertexAttrib2I :: AttribLocation -> GLubyte -> GLubyte -> IO () Source #

vertexAttrib3I :: AttribLocation -> GLubyte -> GLubyte -> GLubyte -> IO () Source #

vertexAttrib4I :: AttribLocation -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> IO () Source #

vertexAttrib1v :: AttribLocation -> Ptr GLubyte -> IO () Source #

vertexAttrib2v :: AttribLocation -> Ptr GLubyte -> IO () Source #

vertexAttrib3v :: AttribLocation -> Ptr GLubyte -> IO () Source #

vertexAttrib4v :: AttribLocation -> Ptr GLubyte -> IO () Source #

vertexAttrib1Nv :: AttribLocation -> Ptr GLubyte -> IO () Source #

vertexAttrib2Nv :: AttribLocation -> Ptr GLubyte -> IO () Source #

vertexAttrib3Nv :: AttribLocation -> Ptr GLubyte -> IO () Source #

vertexAttrib4Nv :: AttribLocation -> Ptr GLubyte -> IO () Source #

vertexAttrib1Iv :: AttribLocation -> Ptr GLubyte -> IO () Source #

vertexAttrib2Iv :: AttribLocation -> Ptr GLubyte -> IO () Source #

vertexAttrib3Iv :: AttribLocation -> Ptr GLubyte -> IO () Source #

vertexAttrib4Iv :: AttribLocation -> Ptr GLubyte -> IO () Source #

VertexAttribComponent GLuint Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

Methods

vertexAttrib1 :: AttribLocation -> GLuint -> IO () Source #

vertexAttrib2 :: AttribLocation -> GLuint -> GLuint -> IO () Source #

vertexAttrib3 :: AttribLocation -> GLuint -> GLuint -> GLuint -> IO () Source #

vertexAttrib4 :: AttribLocation -> GLuint -> GLuint -> GLuint -> GLuint -> IO () Source #

vertexAttrib1N :: AttribLocation -> GLuint -> IO () Source #

vertexAttrib2N :: AttribLocation -> GLuint -> GLuint -> IO () Source #

vertexAttrib3N :: AttribLocation -> GLuint -> GLuint -> GLuint -> IO () Source #

vertexAttrib4N :: AttribLocation -> GLuint -> GLuint -> GLuint -> GLuint -> IO () Source #

vertexAttrib1I :: AttribLocation -> GLuint -> IO () Source #

vertexAttrib2I :: AttribLocation -> GLuint -> GLuint -> IO () Source #

vertexAttrib3I :: AttribLocation -> GLuint -> GLuint -> GLuint -> IO () Source #

vertexAttrib4I :: AttribLocation -> GLuint -> GLuint -> GLuint -> GLuint -> IO () Source #

vertexAttrib1v :: AttribLocation -> Ptr GLuint -> IO () Source #

vertexAttrib2v :: AttribLocation -> Ptr GLuint -> IO () Source #

vertexAttrib3v :: AttribLocation -> Ptr GLuint -> IO () Source #

vertexAttrib4v :: AttribLocation -> Ptr GLuint -> IO () Source #

vertexAttrib1Nv :: AttribLocation -> Ptr GLuint -> IO () Source #

vertexAttrib2Nv :: AttribLocation -> Ptr GLuint -> IO () Source #

vertexAttrib3Nv :: AttribLocation -> Ptr GLuint -> IO () Source #

vertexAttrib4Nv :: AttribLocation -> Ptr GLuint -> IO () Source #

vertexAttrib1Iv :: AttribLocation -> Ptr GLuint -> IO () Source #

vertexAttrib2Iv :: AttribLocation -> Ptr GLuint -> IO () Source #

vertexAttrib3Iv :: AttribLocation -> Ptr GLuint -> IO () Source #

vertexAttrib4Iv :: AttribLocation -> Ptr GLuint -> IO () Source #

VertexAttribComponent GLushort Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

Methods

vertexAttrib1 :: AttribLocation -> GLushort -> IO () Source #

vertexAttrib2 :: AttribLocation -> GLushort -> GLushort -> IO () Source #

vertexAttrib3 :: AttribLocation -> GLushort -> GLushort -> GLushort -> IO () Source #

vertexAttrib4 :: AttribLocation -> GLushort -> GLushort -> GLushort -> GLushort -> IO () Source #

vertexAttrib1N :: AttribLocation -> GLushort -> IO () Source #

vertexAttrib2N :: AttribLocation -> GLushort -> GLushort -> IO () Source #

vertexAttrib3N :: AttribLocation -> GLushort -> GLushort -> GLushort -> IO () Source #

vertexAttrib4N :: AttribLocation -> GLushort -> GLushort -> GLushort -> GLushort -> IO () Source #

vertexAttrib1I :: AttribLocation -> GLushort -> IO () Source #

vertexAttrib2I :: AttribLocation -> GLushort -> GLushort -> IO () Source #

vertexAttrib3I :: AttribLocation -> GLushort -> GLushort -> GLushort -> IO () Source #

vertexAttrib4I :: AttribLocation -> GLushort -> GLushort -> GLushort -> GLushort -> IO () Source #

vertexAttrib1v :: AttribLocation -> Ptr GLushort -> IO () Source #

vertexAttrib2v :: AttribLocation -> Ptr GLushort -> IO () Source #

vertexAttrib3v :: AttribLocation -> Ptr GLushort -> IO () Source #

vertexAttrib4v :: AttribLocation -> Ptr GLushort -> IO () Source #

vertexAttrib1Nv :: AttribLocation -> Ptr GLushort -> IO () Source #

vertexAttrib2Nv :: AttribLocation -> Ptr GLushort -> IO () Source #

vertexAttrib3Nv :: AttribLocation -> Ptr GLushort -> IO () Source #

vertexAttrib4Nv :: AttribLocation -> Ptr GLushort -> IO () Source #

vertexAttrib1Iv :: AttribLocation -> Ptr GLushort -> IO () Source #

vertexAttrib2Iv :: AttribLocation -> Ptr GLushort -> IO () Source #

vertexAttrib3Iv :: AttribLocation -> Ptr GLushort -> IO () Source #

vertexAttrib4Iv :: AttribLocation -> Ptr GLushort -> IO () Source #

# Texture Units

newtype TextureUnit Source #

Identifies a texture unit via its number, which must be in the range of (0 .. `maxTextureUnit`).

Constructors

TextureUnit GLuint |

#### Instances

Instances details

Uniform TextureUnit Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.Shaders.Uniform Methods uniform :: UniformLocation -> StateVar TextureUnit Source # uniformv :: UniformLocation -> GLsizei -> Ptr TextureUnit -> IO () Source #
Storable TextureUnit Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.Texturing.TextureUnit

Methods

sizeOf :: TextureUnit -> Int Source #

alignment :: TextureUnit -> Int Source #

peekElemOff :: Ptr TextureUnit -> Int -> IO TextureUnit Source #

pokeElemOff :: Ptr TextureUnit -> Int -> TextureUnit -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO TextureUnit Source #

pokeByteOff :: Ptr b -> Int -> TextureUnit -> IO () Source #

peek :: Ptr TextureUnit -> IO TextureUnit Source #

poke :: Ptr TextureUnit -> TextureUnit -> IO () Source #

Show TextureUnit Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.Texturing.TextureUnit Methods showsPrec :: Int -> TextureUnit -> ShowS Source # show :: TextureUnit -> String Source # showList :: [TextureUnit] -> ShowS Source #
Eq TextureUnit Source # |
Instance details Defined in Graphics.Rendering.OpenGL.GL.Texturing.TextureUnit Methods (==) :: TextureUnit -> TextureUnit -> Bool Source # (/=) :: TextureUnit -> TextureUnit -> Bool Source #
Ord TextureUnit Source # |

Instance details

Defined in Graphics.Rendering.OpenGL.GL.Texturing.TextureUnit

Methods

compare :: TextureUnit -> TextureUnit -> Ordering Source #

(<) :: TextureUnit -> TextureUnit -> Bool Source #

(<=) :: TextureUnit -> TextureUnit -> Bool Source #

(>) :: TextureUnit -> TextureUnit -> Bool Source #

(>=) :: TextureUnit -> TextureUnit -> Bool Source #

max :: TextureUnit -> TextureUnit -> TextureUnit Source #

min :: TextureUnit -> TextureUnit -> TextureUnit Source #

maxTextureUnit :: GettableStateVar TextureUnit Source #

An implementation must support at least 2 texture units, but it may support up to 32 ones. This state variable can be used to query the actual implementation limit.