| OpenGL-2.2.3.0: A binding for the OpenGL graphics system | Contents | Index
Graphics.Rendering.OpenGL.GL.VertexSpec |
Portability | portable
Stability | stable
Maintainer | sven.panne@aedion.de
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
newtype Vertex1 a = Vertex1 a
data Vertex2 a = Vertex2 !a !a
data Vertex3 a = Vertex3 !a !a !a
data Vertex4 a = Vertex4 !a !a !a !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
Specify the (x, y, z, w) coordinates of a four-dimensional vertex. This must only be done during Graphics.Rendering.OpenGL.GL.BeginEnd.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 ()
vertexv :: Ptr a -> IO ()
Instances
VertexComponent a => Vertex (Vertex4 a) |
VertexComponent a => Vertex (Vertex3 a) |
VertexComponent a => Vertex (Vertex2 a) |
class VertexComponent a
The class of all types which can be used as a vertex coordinate.
Instances
VertexComponent Double |
VertexComponent Float |
VertexComponent Int16 |
VertexComponent Int32 |
newtype Vertex1 a
A vertex with y=0, z=0 and w=1.
Constructors
Vertex1 a |
Instances
Functor Vertex1 |
Typeable1 Vertex1 |
Applicative Vertex1 |
Foldable Vertex1 |
Traversable Vertex1 |
Bounded a => Bounded (Vertex1 a) |
Eq a => Eq (Vertex1 a) |
Ord a => Ord (Vertex1 a) |
Read a => Read (Vertex1 a) |
Show a => Show (Vertex1 a) |
Ix a => Ix (Vertex1 a) |
Typeable a => Typeable (Vertex1 a) |
Storable a => Storable (Vertex1 a) |
VertexAttribComponent a => VertexAttrib (Vertex1 a) |
data Vertex2 a
A vertex with z=0 and w=1.
Constructors
Vertex2 !a !a |
Instances
Functor Vertex2 |
Typeable1 Vertex2 |
Applicative Vertex2 |
Foldable Vertex2 |
Traversable Vertex2 |
TrimmingPoint Vertex2 |
Bounded a => Bounded (Vertex2 a) |
Eq a => Eq (Vertex2 a) |
Ord a => Ord (Vertex2 a) |
Read a => Read (Vertex2 a) |
Show a => Show (Vertex2 a) |
Ix a => Ix (Vertex2 a) |
Typeable a => Typeable (Vertex2 a) |
Storable a => Storable (Vertex2 a) |
VertexAttribComponent a => VertexAttrib (Vertex2 a) |
VertexComponent a => Vertex (Vertex2 a) |
UniformComponent a => Uniform (Vertex2 a) |
WindowPosComponent a => WindowPos (Vertex2 a) |
RasterPosComponent a => RasterPos (Vertex2 a) |
data Vertex3 a
A vertex with w=1.
Constructors
Vertex3 !a !a !a |
Instances
Functor Vertex3 |
Typeable1 Vertex3 |
Applicative Vertex3 |
Foldable Vertex3 |
Traversable Vertex3 |
ControlPoint Vertex3 |
TrimmingPoint Vertex3 |
Bounded a => Bounded (Vertex3 a) |
Eq a => Eq (Vertex3 a) |
Ord a => Ord (Vertex3 a) |
Read a => Read (Vertex3 a) |
Show a => Show (Vertex3 a) |
Ix a => Ix (Vertex3 a) |
Typeable a => Typeable (Vertex3 a) |
Storable a => Storable (Vertex3 a) |
VertexAttribComponent a => VertexAttrib (Vertex3 a) |
VertexComponent a => Vertex (Vertex3 a) |
UniformComponent a => Uniform (Vertex3 a) |
WindowPosComponent a => WindowPos (Vertex3 a) |
RasterPosComponent a => RasterPos (Vertex3 a) |
data Vertex4 a
A fully-fledged four-dimensional vertex.
Constructors
Vertex4 !a !a !a !a |
Instances
Functor Vertex4 |
Typeable1 Vertex4 |
Applicative Vertex4 |
Foldable Vertex4 |
Traversable Vertex4 |
ControlPoint Vertex4 |
Bounded a => Bounded (Vertex4 a) |
Eq a => Eq (Vertex4 a) |
Ord a => Ord (Vertex4 a) |
Read a => Read (Vertex4 a) |
Show a => Show (Vertex4 a) |
Ix a => Ix (Vertex4 a) |
Typeable a => Typeable (Vertex4 a) |
Storable a => Storable (Vertex4 a) |
VertexAttribComponent a => VertexAttrib (Vertex4 a) |
VertexComponent a => Vertex (Vertex4 a) |
UniformComponent a => Uniform (Vertex4 a) |
RasterPosComponent a => RasterPos (Vertex4 a) |
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)
The current texture coordinates (s, t, r, q) for the current texture unit (see Graphics.Rendering.OpenGL.GL.CoordTrans.activeTexture). The initial value is (0,0,0,1) for all texture units.
class TexCoord a where
Change the current texture coordinates of the current or given texture unit.
Methods
texCoord :: a -> IO ()
texCoordv :: Ptr a -> IO ()
multiTexCoord :: TextureUnit -> a -> IO ()
multiTexCoordv :: TextureUnit -> Ptr a -> IO ()
Instances
TexCoordComponent a => TexCoord (TexCoord4 a) |
TexCoordComponent a => TexCoord (TexCoord3 a) |
TexCoordComponent a => TexCoord (TexCoord2 a) |
TexCoordComponent a => TexCoord (TexCoord1 a) |
class TexCoordComponent a
The class of all types which can be used as a texture coordinate.
Instances
TexCoordComponent Double |
TexCoordComponent Float |
TexCoordComponent Int16 |
TexCoordComponent Int32 |
newtype TexCoord1 a
Texture coordinates with t=0, r=0, and q=1.
Constructors
TexCoord1 a |
Instances
Functor TexCoord1 |
Typeable1 TexCoord1 |
Applicative TexCoord1 |
Foldable TexCoord1 |
Traversable TexCoord1 |
ControlPoint TexCoord1 |
Bounded a => Bounded (TexCoord1 a) |
Eq a => Eq (TexCoord1 a) |
Ord a => Ord (TexCoord1 a) |
Read a => Read (TexCoord1 a) |
Show a => Show (TexCoord1 a) |
Ix a => Ix (TexCoord1 a) |
Typeable a => Typeable (TexCoord1 a) |
Storable a => Storable (TexCoord1 a) |
VertexAttribComponent a => VertexAttrib (TexCoord1 a) |
TexCoordComponent a => TexCoord (TexCoord1 a) |
UniformComponent a => Uniform (TexCoord1 a) |
data TexCoord2 a
Texture coordinates with r=0 and q=1.
Constructors
TexCoord2 !a !a |
Instances
Functor TexCoord2 |
Typeable1 TexCoord2 |
Applicative TexCoord2 |
Foldable TexCoord2 |
Traversable TexCoord2 |
ControlPoint TexCoord2 |
Bounded a => Bounded (TexCoord2 a) |
Eq a => Eq (TexCoord2 a) |
Ord a => Ord (TexCoord2 a) |
Read a => Read (TexCoord2 a) |
Show a => Show (TexCoord2 a) |
Ix a => Ix (TexCoord2 a) |
Typeable a => Typeable (TexCoord2 a) |
Storable a => Storable (TexCoord2 a) |
VertexAttribComponent a => VertexAttrib (TexCoord2 a) |
TexCoordComponent a => TexCoord (TexCoord2 a) |
UniformComponent a => Uniform (TexCoord2 a) |
data TexCoord3 a
Texture coordinates with q=1.
Constructors
TexCoord3 !a !a !a |
Instances
Functor TexCoord3 |
Typeable1 TexCoord3 |
Applicative TexCoord3 |
Foldable TexCoord3 |
Traversable TexCoord3 |
ControlPoint TexCoord3 |
Bounded a => Bounded (TexCoord3 a) |
Eq a => Eq (TexCoord3 a) |
Ord a => Ord (TexCoord3 a) |
Read a => Read (TexCoord3 a) |
Show a => Show (TexCoord3 a) |
Ix a => Ix (TexCoord3 a) |
Typeable a => Typeable (TexCoord3 a) |
Storable a => Storable (TexCoord3 a) |
VertexAttribComponent a => VertexAttrib (TexCoord3 a) |
TexCoordComponent a => TexCoord (TexCoord3 a) |
UniformComponent a => Uniform (TexCoord3 a) |
data TexCoord4 a
Fully-fledged four-dimensional texture coordinates.
Constructors
TexCoord4 !a !a !a !a |
Instances
Functor TexCoord4 |
Typeable1 TexCoord4 |
Applicative TexCoord4 |
Foldable TexCoord4 |
Traversable TexCoord4 |
ControlPoint TexCoord4 |
Bounded a => Bounded (TexCoord4 a) |
Eq a => Eq (TexCoord4 a) |
Ord a => Ord (TexCoord4 a) |
Read a => Read (TexCoord4 a) |
Show a => Show (TexCoord4 a) |
Ix a => Ix (TexCoord4 a) |
Typeable a => Typeable (TexCoord4 a) |
Storable a => Storable (TexCoord4 a) |
VertexAttribComponent a => VertexAttrib (TexCoord4 a) |
TexCoordComponent a => TexCoord (TexCoord4 a) |
UniformComponent a => Uniform (TexCoord4 a) |
Normal
currentNormal :: StateVar (Normal3 GLfloat)
The current normal (x, y, z). The initial value is the unit vector (0, 0, 1).
class Normal a where
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 Graphics.Rendering.OpenGL.GL.CoordTrans.normalize is enabled, then normals of any length specified with `normal` or `normalv` are normalized after transformation. If Graphics.Rendering.OpenGL.GL.CoordTrans.rescaleNormal is enabled, normals are scaled by a scaling factor derived from the modelview matrix. Graphics.Rendering.OpenGL.GL.CoordTrans.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 ()
normalv :: Ptr a -> IO ()
Instances
NormalComponent a => Normal (Normal3 a) |
class NormalComponent a
The class of all types which can be used as a component of a normal.
Instances
NormalComponent Double |
NormalComponent Float |
NormalComponent Int8 |
NormalComponent Int16 |
NormalComponent Int32 |
data Normal3 a
Constructors
Normal3 !a !a !a |
Instances
Functor Normal3 |
Typeable1 Normal3 |
Applicative Normal3 |
Foldable Normal3 |
Traversable Normal3 |
ControlPoint Normal3 |
Bounded a => Bounded (Normal3 a) |
Eq a => Eq (Normal3 a) |
Ord a => Ord (Normal3 a) |
Read a => Read (Normal3 a) |
Show a => Show (Normal3 a) |
Ix a => Ix (Normal3 a) |
Typeable a => Typeable (Normal3 a) |
Storable a => Storable (Normal3 a) |
VertexAttribComponent a => VertexAttrib (Normal3 a) |
NormalComponent a => Normal (Normal3 a) |
UniformComponent a => Uniform (Normal3 a) |
Fog Coordinate
currentFogCoord :: StateVar (FogCoord1 GLfloat)
The current fog coordinate. The initial value is 0.
class FogCoord a where
Change the current fog coordinate.
Methods
fogCoord :: a -> IO ()
fogCoordv :: Ptr a -> IO ()
Instances
FogCoordComponent a => FogCoord (FogCoord1 a) |
class FogCoordComponent a
The class of all types which can be used as the fog coordinate.
Instances
FogCoordComponent Double |
FogCoordComponent Float |
newtype FogCoord1 a
A fog coordinate.
Constructors
FogCoord1 a |
Instances
Functor FogCoord1 |
Typeable1 FogCoord1 |
Applicative FogCoord1 |
Foldable FogCoord1 |
Traversable FogCoord1 |
Bounded a => Bounded (FogCoord1 a) |
Eq a => Eq (FogCoord1 a) |
Ord a => Ord (FogCoord1 a) |
Read a => Read (FogCoord1 a) |
Show a => Show (FogCoord1 a) |
Ix a => Ix (FogCoord1 a) |
Typeable a => Typeable (FogCoord1 a) |
Storable a => Storable (FogCoord1 a) |
VertexAttribComponent a => VertexAttrib (FogCoord1 a) |
FogCoordComponent a => FogCoord (FogCoord1 a) |
UniformComponent a => Uniform (FogCoord1 a) |
Color and Secondary Color
rgbaMode :: GettableStateVar Bool
If `rgbaMode` contains `True`, the color buffers store RGBA value. If color indexes are stored, it contains `False`.
currentColor :: StateVar (Color4 GLfloat)
class Color a where
Change the current color.
Methods
color :: a -> IO ()
colorv :: Ptr a -> IO ()
Instances
ColorComponent a => Color (Color4 a) |
ColorComponent a => Color (Color3 a) |
currentSecondaryColor :: StateVar (Color3 GLfloat)
class SecondaryColor a where
Change the current secondary color.
Methods
secondaryColor :: a -> IO ()
secondaryColorv :: Ptr a -> IO ()
Instances
ColorComponent a => SecondaryColor (Color3 a) |
class ColorComponent a
The class of all types which can be used as a color component.
Instances
ColorComponent Double |
ColorComponent Float |
ColorComponent Int8 |
ColorComponent Int16 |
ColorComponent Int32 |
ColorComponent Word8 |
ColorComponent Word16 |
ColorComponent Word32 |
data Color3 a
Constructors
Color3 !a !a !a |
Instances
Functor Color3 |
Typeable1 Color3 |
Applicative Color3 |
Foldable Color3 |
Traversable Color3 |
Bounded a => Bounded (Color3 a) |
Eq a => Eq (Color3 a) |
Ord a => Ord (Color3 a) |
Read a => Read (Color3 a) |
Show a => Show (Color3 a) |
Ix a => Ix (Color3 a) |
Typeable a => Typeable (Color3 a) |
Storable a => Storable (Color3 a) |
VertexAttribComponent a => VertexAttrib (Color3 a) |
ColorComponent a => SecondaryColor (Color3 a) |
ColorComponent a => Color (Color3 a) |
UniformComponent a => Uniform (Color3 a) |
data Color4 a
A fully-fledged RGBA color.
Constructors
Color4 !a !a !a !a |
Instances
Functor Color4 |
Typeable1 Color4 |
Applicative Color4 |
Foldable Color4 |
Traversable Color4 |
ControlPoint Color4 |
Bounded a => Bounded (Color4 a) |
Eq a => Eq (Color4 a) |
Ord a => Ord (Color4 a) |
Read a => Read (Color4 a) |
Show a => Show (Color4 a) |
Ix a => Ix (Color4 a) |
Typeable a => Typeable (Color4 a) |
Storable a => Storable (Color4 a) |
VertexAttribComponent a => VertexAttrib (Color4 a) |
ColorComponent a => Color (Color4 a) |
UniformComponent a => Uniform (Color4 a) |
currentIndex :: StateVar (Index1 GLint)
class Index a where
Change the current color index.
Methods
index :: a -> IO ()
indexv :: Ptr a -> IO ()
Instances
IndexComponent a => Index (Index1 a) |
class IndexComponent a
The class of all types which can be used as a color index.
Instances
IndexComponent Double |
IndexComponent Float |
IndexComponent Int16 |
IndexComponent Int32 |
IndexComponent Word8 |
newtype Index1 a
A color index.
Constructors
Index1 a |
Instances
Functor Index1 |
Typeable1 Index1 |
Applicative Index1 |
Foldable Index1 |
Traversable Index1 |
ControlPoint Index1 |
Bounded a => Bounded (Index1 a) |
Eq a => Eq (Index1 a) |
Ord a => Ord (Index1 a) |
Read a => Read (Index1 a) |
Show a => Show (Index1 a) |
Ix a => Ix (Index1 a) |
Typeable a => Typeable (Index1 a) |
Storable a => Storable (Index1 a) |
VertexAttribComponent a => VertexAttrib (Index1 a) |
IndexComponent a => Index (Index1 a) |
UniformComponent a => Uniform (Index1 a) |
Generic Vertex Attributes
data IntegerHandling
Constructors
ToFloat |
ToNormalizedFloat |
KeepIntegral |
Instances
Eq IntegerHandling |
Ord IntegerHandling |
Show IntegerHandling |
newtype AttribLocation
Constructors
AttribLocation GLuint |
Instances
Eq AttribLocation |
Ord AttribLocation |
Show AttribLocation |
currentVertexAttrib :: AttribLocation -> StateVar (Vertex4 GLfloat)
currentVertexAttribI :: AttribLocation -> StateVar (Vertex4 GLint)
currentVertexAttribIu :: AttribLocation -> StateVar (Vertex4 GLuint)
class VertexAttrib a where
Methods
vertexAttrib :: IntegerHandling -> AttribLocation -> a -> IO ()
vertexAttribv :: IntegerHandling -> AttribLocation -> Ptr a -> IO ()
Instances
VertexAttribComponent a => VertexAttrib (Vector4 a) |
VertexAttribComponent a => VertexAttrib (Vector3 a) |
VertexAttribComponent a => VertexAttrib (Vector2 a) |
VertexAttribComponent a => VertexAttrib (Vector1 a) |
VertexAttribComponent a => VertexAttrib (Vertex4 a) |
VertexAttribComponent a => VertexAttrib (Vertex3 a) |
VertexAttribComponent a => VertexAttrib (Vertex2 a) |
VertexAttribComponent a => VertexAttrib (Vertex1 a) |
VertexAttribComponent a => VertexAttrib (Index1 a) |
VertexAttribComponent a => VertexAttrib (Color4 a) |
VertexAttribComponent a => VertexAttrib (Color3 a) |
VertexAttribComponent a => VertexAttrib (FogCoord1 a) |
VertexAttribComponent a => VertexAttrib (Normal3 a) |
VertexAttribComponent a => VertexAttrib (TexCoord4 a) |
VertexAttribComponent a => VertexAttrib (TexCoord3 a) |
VertexAttribComponent a => VertexAttrib (TexCoord2 a) |
VertexAttribComponent a => VertexAttrib (TexCoord1 a) |
class (Storable a, Num a) => VertexAttribComponent a where
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.
Methods
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 ()
Instances
VertexAttribComponent Double |
VertexAttribComponent Float |
VertexAttribComponent Int8 |
VertexAttribComponent Int16 |
VertexAttribComponent Int32 |
VertexAttribComponent Word8 |
VertexAttribComponent Word16 |
VertexAttribComponent Word32 |
Texture Units
newtype TextureUnit
Identifies a texture unit via its number, which must be in the range of (0 .. maxTextureUnit).
Constructors
TextureUnit GLuint |
Instances
Eq TextureUnit |
Ord TextureUnit |
Show TextureUnit |
maxTextureUnit :: GettableStateVar TextureUnit
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.
Produced by Haddock version 2.7.2