diff options
author | Joshua Rahm <joshua.rahm@colorado.edu> | 2014-04-04 19:38:15 -0600 |
---|---|---|
committer | Joshua Rahm <joshua.rahm@colorado.edu> | 2014-04-04 19:38:15 -0600 |
commit | e083553a455d30374f21aa0c34d9ae827470d490 (patch) | |
tree | 0313b29e5ff36efa76a53dbe63169c9d18b4433f /Graphics/Glyph/ExtendedGL.hs | |
download | terralloc-e083553a455d30374f21aa0c34d9ae827470d490.tar.gz terralloc-e083553a455d30374f21aa0c34d9ae827470d490.tar.bz2 terralloc-e083553a455d30374f21aa0c34d9ae827470d490.zip |
intiial commit
Diffstat (limited to 'Graphics/Glyph/ExtendedGL.hs')
-rw-r--r-- | Graphics/Glyph/ExtendedGL.hs | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/Graphics/Glyph/ExtendedGL.hs b/Graphics/Glyph/ExtendedGL.hs new file mode 100644 index 0000000..d42e973 --- /dev/null +++ b/Graphics/Glyph/ExtendedGL.hs @@ -0,0 +1,26 @@ +module Graphics.Glyph.ExtendedGL where + +import Graphics.Rendering.OpenGL +import Graphics.Rendering.OpenGL.Raw.Core31 +import Graphics.Rendering.OpenGL.Raw.ARB + +marshalPrimitiveMode :: PrimitiveMode -> GLenum +marshalPrimitiveMode x = case x of + Points -> 0x0 + Lines -> 0x1 + LineLoop -> 0x2 + LineStrip -> 0x3 + Triangles -> 0x4 + TriangleStrip -> 0x5 + TriangleFan -> 0x6 + Quads -> 0x7 + QuadStrip -> 0x8 + Polygon -> 0x9 + +drawArraysInstanced :: PrimitiveMode -> ArrayIndex -> NumArrayIndices -> GLsizei -> IO () +drawArraysInstanced = glDrawArraysInstanced . marshalPrimitiveMode + +vertexAttributeDivisor :: AttribLocation -> SettableStateVar GLuint +vertexAttributeDivisor (AttribLocation loc) = + makeSettableStateVar $ \val -> + glVertexAttribDivisor loc val |