an attempt to create a concise modern Haskell OpenGL boilerplate with basic IO among other things...
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
An OpenGL template:
windows and input: GLFW
shader uniforms : -
windows and input: GLFW
shader uniforms : +
windows and input: SDL2
shader uniforms : +
A Hello Window OpenGL application with stack as a build system.
A simple OpenGL application, drawing a polygon with texture blending, transformed by GLMatrix, using element buffer, with stack as a build system.
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