Awesome
Haskell-OpenGL-Tutorial
an attempt to create a concise modern Haskell OpenGL boilerplate with basic IO among other things...
MandelbrotYampa
A simple OpenGL application, using FRP.Yampa to handle animation and user events, SDL2 for managing windows and input, stack as a build system.
windows and input: SDL2
shader uniforms : +
frp : Yampa
Output:
Animated Output:
<br>
<br>
<br>
A GLFW Boilerplate
An OpenGL template:
windows and input: GLFW
shader uniforms : -
<br>
<br>
<br>
A GLFW Boilerplate with Mandelbrot shader
windows and input: GLFW
shader uniforms : +
<br>
<br>
<br>
A SDL2 Boilerplate with Mandelbrot shader
windows and input: SDL2
shader uniforms : +
<br>
<br>
<br>
HelloWindow
A Hello Window OpenGL application with stack as a build system.
Output:
<br>
<br>
<br>
Transformations
A simple OpenGL application, drawing a polygon with texture blending, transformed by GLMatrix, using element buffer, with stack as a build system.
Output:
<br>
<br>
<br>
Basic Hellow Window
<br>
<br>
<br>
A Hello Window, with basic input callbacks.
<br>
<br>
<br>
Drawing 2 triangles
<br>
<br>
<br>
Drawing 2 textured triangles
<br>
<br>
<br>
A colored triangle
<br>
<br>
<br>
Sugarizing the interface with polymorphic functions.
module Main where
import NGL.Shape
import NGL.Rendering
main :: IO ()
main = do
let drawables = [toDrawable Red $ Square (-0.5, -0.5) 1.0,
toDrawable Green $ Circle (0.5, 0.5) 0.5 100,
toDrawable Blue $ Rect (-1.0,0.33) (0.0,0.66),
toDrawable White $ Polyline [ (0.0,-0.66)
,(0.33,-0.33)
,(0.66,-0.66)
,(1.0,-0.33)]
0.01
]
window <- createWindow "NGL is Not GLoss" (512,512)
drawIn Default window drawables
closeWindow window