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

Graphics.Rendering.OpenGL.GL.VertexSpec

Description

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

Synopsis

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 (Vertex4 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

Methods

vertex :: Vertex4 a -> IO () Source #

vertexv :: Ptr (Vertex4 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 (Vertex2 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

Methods

vertex :: Vertex2 a -> IO () Source #

vertexv :: Ptr (Vertex2 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 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 ()

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 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 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 ()

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 (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 #

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 (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 (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 #

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 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 ()

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 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 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 ()

newtype TexCoord1 a Source #

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

Constructors

TexCoord1 a 

Instances

Instances details
Functor TexCoord1 Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

fmap :: (a -> b) -> TexCoord1 a -> TexCoord1 b

(<$) :: a -> TexCoord1 b -> TexCoord1 a

Applicative TexCoord1 Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

pure :: a -> TexCoord1 a

(<*>) :: TexCoord1 (a -> b) -> TexCoord1 a -> TexCoord1 b

liftA2 :: (a -> b -> c) -> TexCoord1 a -> TexCoord1 b -> TexCoord1 c

(*>) :: TexCoord1 a -> TexCoord1 b -> TexCoord1 b

(<*) :: TexCoord1 a -> TexCoord1 b -> TexCoord1 a

Foldable TexCoord1 Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

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

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

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

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

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

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

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

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

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

toList :: TexCoord1 a -> [a]

null :: TexCoord1 a -> Bool

length :: TexCoord1 a -> Int

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

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

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

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

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

Traversable TexCoord1 Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

traverse :: Applicative f => (a -> f b) -> TexCoord1 a -> f (TexCoord1 b)

sequenceA :: Applicative f => TexCoord1 (f a) -> f (TexCoord1 a)

mapM :: Monad m => (a -> m b) -> TexCoord1 a -> m (TexCoord1 b)

sequence :: Monad m => TexCoord1 (m a) -> m (TexCoord1 a)

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 ()

Bounded a => Bounded (TexCoord1 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Eq a => Eq (TexCoord1 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

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

(/=) :: TexCoord1 a -> TexCoord1 a -> Bool

Ord a => Ord (TexCoord1 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

compare :: TexCoord1 a -> TexCoord1 a -> Ordering

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

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

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

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

max :: TexCoord1 a -> TexCoord1 a -> TexCoord1 a

min :: TexCoord1 a -> TexCoord1 a -> TexCoord1 a

Read a => Read (TexCoord1 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

readsPrec :: Int -> ReadS (TexCoord1 a)

readList :: ReadS [TexCoord1 a]

readPrec :: ReadPrec (TexCoord1 a)

readListPrec :: ReadPrec [TexCoord1 a]

Show a => Show (TexCoord1 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

showsPrec :: Int -> TexCoord1 a -> ShowS

show :: TexCoord1 a -> String

showList :: [TexCoord1 a] -> ShowS

Ix a => Ix (TexCoord1 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

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

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

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

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

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

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

Storable a => Storable (TexCoord1 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

sizeOf :: TexCoord1 a -> Int

alignment :: TexCoord1 a -> Int

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

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

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

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

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

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

VertexAttribComponent a => VertexAttrib (TexCoord1 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

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 #

UniformComponent a => Uniform (TexCoord1 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.Shaders.Uniform

data TexCoord2 a Source #

Texture coordinates with r=0 and q=1.

Constructors

TexCoord2 !a !a 

Instances

Instances details
Functor TexCoord2 Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

fmap :: (a -> b) -> TexCoord2 a -> TexCoord2 b

(<$) :: a -> TexCoord2 b -> TexCoord2 a

Applicative TexCoord2 Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

pure :: a -> TexCoord2 a

(<*>) :: TexCoord2 (a -> b) -> TexCoord2 a -> TexCoord2 b

liftA2 :: (a -> b -> c) -> TexCoord2 a -> TexCoord2 b -> TexCoord2 c

(*>) :: TexCoord2 a -> TexCoord2 b -> TexCoord2 b

(<*) :: TexCoord2 a -> TexCoord2 b -> TexCoord2 a

Foldable TexCoord2 Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

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

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

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

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

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

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

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

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

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

toList :: TexCoord2 a -> [a]

null :: TexCoord2 a -> Bool

length :: TexCoord2 a -> Int

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

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

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

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

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

Traversable TexCoord2 Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

traverse :: Applicative f => (a -> f b) -> TexCoord2 a -> f (TexCoord2 b)

sequenceA :: Applicative f => TexCoord2 (f a) -> f (TexCoord2 a)

mapM :: Monad m => (a -> m b) -> TexCoord2 a -> m (TexCoord2 b)

sequence :: Monad m => TexCoord2 (m a) -> m (TexCoord2 a)

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 ()

Bounded a => Bounded (TexCoord2 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Eq a => Eq (TexCoord2 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

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

(/=) :: TexCoord2 a -> TexCoord2 a -> Bool

Ord a => Ord (TexCoord2 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

compare :: TexCoord2 a -> TexCoord2 a -> Ordering

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

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

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

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

max :: TexCoord2 a -> TexCoord2 a -> TexCoord2 a

min :: TexCoord2 a -> TexCoord2 a -> TexCoord2 a

Read a => Read (TexCoord2 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

readsPrec :: Int -> ReadS (TexCoord2 a)

readList :: ReadS [TexCoord2 a]

readPrec :: ReadPrec (TexCoord2 a)

readListPrec :: ReadPrec [TexCoord2 a]

Show a => Show (TexCoord2 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

showsPrec :: Int -> TexCoord2 a -> ShowS

show :: TexCoord2 a -> String

showList :: [TexCoord2 a] -> ShowS

Ix a => Ix (TexCoord2 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

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

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

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

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

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

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

Storable a => Storable (TexCoord2 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

sizeOf :: TexCoord2 a -> Int

alignment :: TexCoord2 a -> Int

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

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

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

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

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

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

VertexAttribComponent a => VertexAttrib (TexCoord2 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

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 #

UniformComponent a => Uniform (TexCoord2 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.Shaders.Uniform

data TexCoord3 a Source #

Texture coordinates with q=1.

Constructors

TexCoord3 !a !a !a 

Instances

Instances details
Functor TexCoord3 Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

fmap :: (a -> b) -> TexCoord3 a -> TexCoord3 b

(<$) :: a -> TexCoord3 b -> TexCoord3 a

Applicative TexCoord3 Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

pure :: a -> TexCoord3 a

(<*>) :: TexCoord3 (a -> b) -> TexCoord3 a -> TexCoord3 b

liftA2 :: (a -> b -> c) -> TexCoord3 a -> TexCoord3 b -> TexCoord3 c

(*>) :: TexCoord3 a -> TexCoord3 b -> TexCoord3 b

(<*) :: TexCoord3 a -> TexCoord3 b -> TexCoord3 a

Foldable TexCoord3 Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

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

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

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

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

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

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

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

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

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

toList :: TexCoord3 a -> [a]

null :: TexCoord3 a -> Bool

length :: TexCoord3 a -> Int

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

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

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

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

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

Traversable TexCoord3 Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

traverse :: Applicative f => (a -> f b) -> TexCoord3 a -> f (TexCoord3 b)

sequenceA :: Applicative f => TexCoord3 (f a) -> f (TexCoord3 a)

mapM :: Monad m => (a -> m b) -> TexCoord3 a -> m (TexCoord3 b)

sequence :: Monad m => TexCoord3 (m a) -> m (TexCoord3 a)

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 ()

Bounded a => Bounded (TexCoord3 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Eq a => Eq (TexCoord3 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

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

(/=) :: TexCoord3 a -> TexCoord3 a -> Bool

Ord a => Ord (TexCoord3 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

compare :: TexCoord3 a -> TexCoord3 a -> Ordering

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

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

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

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

max :: TexCoord3 a -> TexCoord3 a -> TexCoord3 a

min :: TexCoord3 a -> TexCoord3 a -> TexCoord3 a

Read a => Read (TexCoord3 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

readsPrec :: Int -> ReadS (TexCoord3 a)

readList :: ReadS [TexCoord3 a]

readPrec :: ReadPrec (TexCoord3 a)

readListPrec :: ReadPrec [TexCoord3 a]

Show a => Show (TexCoord3 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

showsPrec :: Int -> TexCoord3 a -> ShowS

show :: TexCoord3 a -> String

showList :: [TexCoord3 a] -> ShowS

Ix a => Ix (TexCoord3 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

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

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

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

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

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

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

Storable a => Storable (TexCoord3 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

sizeOf :: TexCoord3 a -> Int

alignment :: TexCoord3 a -> Int

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

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

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

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

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

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

VertexAttribComponent a => VertexAttrib (TexCoord3 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

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 #

UniformComponent a => Uniform (TexCoord3 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.Shaders.Uniform

data TexCoord4 a Source #

Fully-fledged four-dimensional texture coordinates.

Constructors

TexCoord4 !a !a !a !a 

Instances

Instances details
Functor TexCoord4 Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

fmap :: (a -> b) -> TexCoord4 a -> TexCoord4 b

(<$) :: a -> TexCoord4 b -> TexCoord4 a

Applicative TexCoord4 Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

pure :: a -> TexCoord4 a

(<*>) :: TexCoord4 (a -> b) -> TexCoord4 a -> TexCoord4 b

liftA2 :: (a -> b -> c) -> TexCoord4 a -> TexCoord4 b -> TexCoord4 c

(*>) :: TexCoord4 a -> TexCoord4 b -> TexCoord4 b

(<*) :: TexCoord4 a -> TexCoord4 b -> TexCoord4 a

Foldable TexCoord4 Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

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

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

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

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

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

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

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

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

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

toList :: TexCoord4 a -> [a]

null :: TexCoord4 a -> Bool

length :: TexCoord4 a -> Int

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

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

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

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

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

Traversable TexCoord4 Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

traverse :: Applicative f => (a -> f b) -> TexCoord4 a -> f (TexCoord4 b)

sequenceA :: Applicative f => TexCoord4 (f a) -> f (TexCoord4 a)

mapM :: Monad m => (a -> m b) -> TexCoord4 a -> m (TexCoord4 b)

sequence :: Monad m => TexCoord4 (m a) -> m (TexCoord4 a)

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 ()

Bounded a => Bounded (TexCoord4 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Eq a => Eq (TexCoord4 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

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

(/=) :: TexCoord4 a -> TexCoord4 a -> Bool

Ord a => Ord (TexCoord4 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

compare :: TexCoord4 a -> TexCoord4 a -> Ordering

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

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

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

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

max :: TexCoord4 a -> TexCoord4 a -> TexCoord4 a

min :: TexCoord4 a -> TexCoord4 a -> TexCoord4 a

Read a => Read (TexCoord4 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

readsPrec :: Int -> ReadS (TexCoord4 a)

readList :: ReadS [TexCoord4 a]

readPrec :: ReadPrec (TexCoord4 a)

readListPrec :: ReadPrec [TexCoord4 a]

Show a => Show (TexCoord4 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

showsPrec :: Int -> TexCoord4 a -> ShowS

show :: TexCoord4 a -> String

showList :: [TexCoord4 a] -> ShowS

Ix a => Ix (TexCoord4 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

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

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

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

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

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

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

Storable a => Storable (TexCoord4 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

sizeOf :: TexCoord4 a -> Int

alignment :: TexCoord4 a -> Int

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

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

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

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

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

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

VertexAttribComponent a => VertexAttrib (TexCoord4 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

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 #

UniformComponent a => Uniform (TexCoord4 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.Shaders.Uniform

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 GLshort Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

Methods

normal3 :: GLshort -> GLshort -> GLshort -> IO ()

normal3v :: Ptr GLshort -> IO ()

NormalComponent GLint Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

Methods

normal3 :: GLint -> GLint -> GLint -> IO ()

normal3v :: Ptr GLint -> IO ()

NormalComponent GLfloat Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

Methods

normal3 :: GLfloat -> GLfloat -> GLfloat -> IO ()

normal3v :: Ptr GLfloat -> IO ()

NormalComponent GLdouble Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

Methods

normal3 :: GLdouble -> GLdouble -> GLdouble -> IO ()

normal3v :: Ptr GLdouble -> IO ()

data Normal3 a Source #

Constructors

Normal3 !a !a !a 

Instances

Instances details
Functor Normal3 Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

fmap :: (a -> b) -> Normal3 a -> Normal3 b

(<$) :: a -> Normal3 b -> Normal3 a

Applicative Normal3 Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

pure :: a -> Normal3 a

(<*>) :: Normal3 (a -> b) -> Normal3 a -> Normal3 b

liftA2 :: (a -> b -> c) -> Normal3 a -> Normal3 b -> Normal3 c

(*>) :: Normal3 a -> Normal3 b -> Normal3 b

(<*) :: Normal3 a -> Normal3 b -> Normal3 a

Foldable Normal3 Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

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

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

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

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

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

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

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

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

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

toList :: Normal3 a -> [a]

null :: Normal3 a -> Bool

length :: Normal3 a -> Int

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

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

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

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

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

Traversable Normal3 Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

traverse :: Applicative f => (a -> f b) -> Normal3 a -> f (Normal3 b)

sequenceA :: Applicative f => Normal3 (f a) -> f (Normal3 a)

mapM :: Monad m => (a -> m b) -> Normal3 a -> m (Normal3 b)

sequence :: Monad m => Normal3 (m a) -> m (Normal3 a)

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 ()

Bounded a => Bounded (Normal3 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Eq a => Eq (Normal3 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

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

(/=) :: Normal3 a -> Normal3 a -> Bool

Ord a => Ord (Normal3 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

compare :: Normal3 a -> Normal3 a -> Ordering

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

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

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

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

max :: Normal3 a -> Normal3 a -> Normal3 a

min :: Normal3 a -> Normal3 a -> Normal3 a

Read a => Read (Normal3 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

readsPrec :: Int -> ReadS (Normal3 a)

readList :: ReadS [Normal3 a]

readPrec :: ReadPrec (Normal3 a)

readListPrec :: ReadPrec [Normal3 a]

Show a => Show (Normal3 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

showsPrec :: Int -> Normal3 a -> ShowS

show :: Normal3 a -> String

showList :: [Normal3 a] -> ShowS

Ix a => Ix (Normal3 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

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

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

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

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

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

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

Storable a => Storable (Normal3 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

sizeOf :: Normal3 a -> Int

alignment :: Normal3 a -> Int

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

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

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

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

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

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

VertexAttribComponent a => VertexAttrib (Normal3 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

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 #

UniformComponent a => Uniform (Normal3 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.Shaders.Uniform

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 GLfloat Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

Methods

fogCoord1 :: GLfloat -> IO ()

fogCoord1v :: Ptr GLfloat -> IO ()

FogCoordComponent GLdouble Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

Methods

fogCoord1 :: GLdouble -> IO ()

fogCoord1v :: Ptr GLdouble -> IO ()

newtype FogCoord1 a Source #

A fog coordinate.

Constructors

FogCoord1 a 

Instances

Instances details
Functor FogCoord1 Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

fmap :: (a -> b) -> FogCoord1 a -> FogCoord1 b

(<$) :: a -> FogCoord1 b -> FogCoord1 a

Applicative FogCoord1 Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

pure :: a -> FogCoord1 a

(<*>) :: FogCoord1 (a -> b) -> FogCoord1 a -> FogCoord1 b

liftA2 :: (a -> b -> c) -> FogCoord1 a -> FogCoord1 b -> FogCoord1 c

(*>) :: FogCoord1 a -> FogCoord1 b -> FogCoord1 b

(<*) :: FogCoord1 a -> FogCoord1 b -> FogCoord1 a

Foldable FogCoord1 Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

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

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

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

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

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

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

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

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

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

toList :: FogCoord1 a -> [a]

null :: FogCoord1 a -> Bool

length :: FogCoord1 a -> Int

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

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

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

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

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

Traversable FogCoord1 Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

traverse :: Applicative f => (a -> f b) -> FogCoord1 a -> f (FogCoord1 b)

sequenceA :: Applicative f => FogCoord1 (f a) -> f (FogCoord1 a)

mapM :: Monad m => (a -> m b) -> FogCoord1 a -> m (FogCoord1 b)

sequence :: Monad m => FogCoord1 (m a) -> m (FogCoord1 a)

Bounded a => Bounded (FogCoord1 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Eq a => Eq (FogCoord1 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

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

(/=) :: FogCoord1 a -> FogCoord1 a -> Bool

Ord a => Ord (FogCoord1 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

compare :: FogCoord1 a -> FogCoord1 a -> Ordering

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

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

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

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

max :: FogCoord1 a -> FogCoord1 a -> FogCoord1 a

min :: FogCoord1 a -> FogCoord1 a -> FogCoord1 a

Read a => Read (FogCoord1 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

readsPrec :: Int -> ReadS (FogCoord1 a)

readList :: ReadS [FogCoord1 a]

readPrec :: ReadPrec (FogCoord1 a)

readListPrec :: ReadPrec [FogCoord1 a]

Show a => Show (FogCoord1 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

showsPrec :: Int -> FogCoord1 a -> ShowS

show :: FogCoord1 a -> String

showList :: [FogCoord1 a] -> ShowS

Ix a => Ix (FogCoord1 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

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

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

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

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

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

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

Storable a => Storable (FogCoord1 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

sizeOf :: FogCoord1 a -> Int

alignment :: FogCoord1 a -> Int

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

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

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

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

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

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

VertexAttribComponent a => VertexAttrib (FogCoord1 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

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 #

UniformComponent a => Uniform (FogCoord1 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.Shaders.Uniform

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.

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 (Color4 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

Methods

color :: Color4 a -> IO () Source #

colorv :: Ptr (Color4 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 #

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 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 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 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 ()

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 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 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 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 ()

data Color3 a Source #

Constructors

Color3 !a !a !a 

Instances

Instances details
Functor Color3 Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

fmap :: (a -> b) -> Color3 a -> Color3 b

(<$) :: a -> Color3 b -> Color3 a

Applicative Color3 Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

pure :: a -> Color3 a

(<*>) :: Color3 (a -> b) -> Color3 a -> Color3 b

liftA2 :: (a -> b -> c) -> Color3 a -> Color3 b -> Color3 c

(*>) :: Color3 a -> Color3 b -> Color3 b

(<*) :: Color3 a -> Color3 b -> Color3 a

Foldable Color3 Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

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

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

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

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

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

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

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

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

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

toList :: Color3 a -> [a]

null :: Color3 a -> Bool

length :: Color3 a -> Int

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

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

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

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

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

Traversable Color3 Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

traverse :: Applicative f => (a -> f b) -> Color3 a -> f (Color3 b)

sequenceA :: Applicative f => Color3 (f a) -> f (Color3 a)

mapM :: Monad m => (a -> m b) -> Color3 a -> m (Color3 b)

sequence :: Monad m => Color3 (m a) -> m (Color3 a)

Bounded a => Bounded (Color3 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

minBound :: Color3 a

maxBound :: Color3 a

Eq a => Eq (Color3 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

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

(/=) :: Color3 a -> Color3 a -> Bool

Ord a => Ord (Color3 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

compare :: Color3 a -> Color3 a -> Ordering

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

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

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

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

max :: Color3 a -> Color3 a -> Color3 a

min :: Color3 a -> Color3 a -> Color3 a

Read a => Read (Color3 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

readsPrec :: Int -> ReadS (Color3 a)

readList :: ReadS [Color3 a]

readPrec :: ReadPrec (Color3 a)

readListPrec :: ReadPrec [Color3 a]

Show a => Show (Color3 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

showsPrec :: Int -> Color3 a -> ShowS

show :: Color3 a -> String

showList :: [Color3 a] -> ShowS

Ix a => Ix (Color3 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

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

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

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

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

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

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

Storable a => Storable (Color3 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

sizeOf :: Color3 a -> Int

alignment :: Color3 a -> Int

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

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

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

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

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

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

VertexAttribComponent a => VertexAttrib (Color3 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

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 #

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 #

UniformComponent a => Uniform (Color3 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.Shaders.Uniform

data Color4 a Source #

A fully-fledged RGBA color.

Constructors

Color4 !a !a !a !a 

Instances

Instances details
Functor Color4 Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

fmap :: (a -> b) -> Color4 a -> Color4 b

(<$) :: a -> Color4 b -> Color4 a

Applicative Color4 Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

pure :: a -> Color4 a

(<*>) :: Color4 (a -> b) -> Color4 a -> Color4 b

liftA2 :: (a -> b -> c) -> Color4 a -> Color4 b -> Color4 c

(*>) :: Color4 a -> Color4 b -> Color4 b

(<*) :: Color4 a -> Color4 b -> Color4 a

Foldable Color4 Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

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

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

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

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

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

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

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

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

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

toList :: Color4 a -> [a]

null :: Color4 a -> Bool

length :: Color4 a -> Int

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

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

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

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

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

Traversable Color4 Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

traverse :: Applicative f => (a -> f b) -> Color4 a -> f (Color4 b)

sequenceA :: Applicative f => Color4 (f a) -> f (Color4 a)

mapM :: Monad m => (a -> m b) -> Color4 a -> m (Color4 b)

sequence :: Monad m => Color4 (m a) -> m (Color4 a)

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 ()

Bounded a => Bounded (Color4 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

minBound :: Color4 a

maxBound :: Color4 a

Eq a => Eq (Color4 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

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

(/=) :: Color4 a -> Color4 a -> Bool

Ord a => Ord (Color4 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

compare :: Color4 a -> Color4 a -> Ordering

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

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

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

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

max :: Color4 a -> Color4 a -> Color4 a

min :: Color4 a -> Color4 a -> Color4 a

Read a => Read (Color4 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

readsPrec :: Int -> ReadS (Color4 a)

readList :: ReadS [Color4 a]

readPrec :: ReadPrec (Color4 a)

readListPrec :: ReadPrec [Color4 a]

Show a => Show (Color4 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

showsPrec :: Int -> Color4 a -> ShowS

show :: Color4 a -> String

showList :: [Color4 a] -> ShowS

Ix a => Ix (Color4 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

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

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

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

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

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

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

Storable a => Storable (Color4 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

sizeOf :: Color4 a -> Int

alignment :: Color4 a -> Int

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

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

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

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

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

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

VertexAttribComponent a => VertexAttrib (Color4 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

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 #

UniformComponent a => Uniform (Color4 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.Shaders.Uniform

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 GLubyte Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

Methods

index1 :: GLubyte -> IO ()

index1v :: Ptr GLubyte -> IO ()

IndexComponent GLshort Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

Methods

index1 :: GLshort -> IO ()

index1v :: Ptr GLshort -> IO ()

IndexComponent GLint Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

Methods

index1 :: GLint -> IO ()

index1v :: Ptr GLint -> IO ()

IndexComponent GLfloat Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

Methods

index1 :: GLfloat -> IO ()

index1v :: Ptr GLfloat -> IO ()

IndexComponent GLdouble Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

Methods

index1 :: GLdouble -> IO ()

index1v :: Ptr GLdouble -> IO ()

newtype Index1 a Source #

A color index.

Constructors

Index1 a 

Instances

Instances details
Functor Index1 Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

fmap :: (a -> b) -> Index1 a -> Index1 b

(<$) :: a -> Index1 b -> Index1 a

Applicative Index1 Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

pure :: a -> Index1 a

(<*>) :: Index1 (a -> b) -> Index1 a -> Index1 b

liftA2 :: (a -> b -> c) -> Index1 a -> Index1 b -> Index1 c

(*>) :: Index1 a -> Index1 b -> Index1 b

(<*) :: Index1 a -> Index1 b -> Index1 a

Foldable Index1 Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

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

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

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

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

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

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

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

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

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

toList :: Index1 a -> [a]

null :: Index1 a -> Bool

length :: Index1 a -> Int

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

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

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

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

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

Traversable Index1 Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

traverse :: Applicative f => (a -> f b) -> Index1 a -> f (Index1 b)

sequenceA :: Applicative f => Index1 (f a) -> f (Index1 a)

mapM :: Monad m => (a -> m b) -> Index1 a -> m (Index1 b)

sequence :: Monad m => Index1 (m a) -> m (Index1 a)

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 ()

Bounded a => Bounded (Index1 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

minBound :: Index1 a

maxBound :: Index1 a

Eq a => Eq (Index1 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

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

(/=) :: Index1 a -> Index1 a -> Bool

Ord a => Ord (Index1 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

compare :: Index1 a -> Index1 a -> Ordering

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

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

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

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

max :: Index1 a -> Index1 a -> Index1 a

min :: Index1 a -> Index1 a -> Index1 a

Read a => Read (Index1 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

readsPrec :: Int -> ReadS (Index1 a)

readList :: ReadS [Index1 a]

readPrec :: ReadPrec (Index1 a)

readListPrec :: ReadPrec [Index1 a]

Show a => Show (Index1 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

showsPrec :: Int -> Index1 a -> ShowS

show :: Index1 a -> String

showList :: [Index1 a] -> ShowS

Ix a => Ix (Index1 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

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

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

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

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

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

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

Storable a => Storable (Index1 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexAttributes

Methods

sizeOf :: Index1 a -> Int

alignment :: Index1 a -> Int

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

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

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

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

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

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

VertexAttribComponent a => VertexAttrib (Index1 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

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 #

UniformComponent a => Uniform (Index1 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.Shaders.Uniform

Generic Vertex Attributes

class VertexAttrib a where Source #

Instances

Instances details
VertexAttribComponent a => VertexAttrib (Vector4 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

VertexAttribComponent a => VertexAttrib (Vector3 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

VertexAttribComponent a => VertexAttrib (Vector2 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

VertexAttribComponent a => VertexAttrib (Vector1 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

VertexAttribComponent a => VertexAttrib (Vertex4 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

VertexAttribComponent a => VertexAttrib (Vertex3 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

VertexAttribComponent a => VertexAttrib (Vertex2 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

VertexAttribComponent a => VertexAttrib (Vertex1 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

VertexAttribComponent a => VertexAttrib (Index1 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

VertexAttribComponent a => VertexAttrib (Color4 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

VertexAttribComponent a => VertexAttrib (Color3 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

VertexAttribComponent a => VertexAttrib (FogCoord1 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

VertexAttribComponent a => VertexAttrib (Normal3 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

VertexAttribComponent a => VertexAttrib (TexCoord4 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

VertexAttribComponent a => VertexAttrib (TexCoord3 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

VertexAttribComponent a => VertexAttrib (TexCoord2 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

VertexAttribComponent a => VertexAttrib (TexCoord1 a) Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.VertexSpec

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 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 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 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 #

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 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 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 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 #

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
Eq TextureUnit Source # 
Instance details

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

Methods

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

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

Ord TextureUnit Source # 
Instance details

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

Show TextureUnit Source # 
Instance details

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

Methods

showsPrec :: Int -> TextureUnit -> ShowS

show :: TextureUnit -> String

showList :: [TextureUnit] -> ShowS

Storable TextureUnit Source # 
Instance details

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

Methods

sizeOf :: TextureUnit -> Int

alignment :: TextureUnit -> Int

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

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

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

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

peek :: Ptr TextureUnit -> IO TextureUnit

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

Uniform TextureUnit Source # 
Instance details

Defined in Graphics.Rendering.OpenGL.GL.Shaders.Uniform

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.