= Gloss = Gloss hides the pain of drawing simple vector graphics behind a nice data type and a few display functions. Gloss uses OpenGL and GLUT under the hood, but you won't have to worry about any of that. Get something cool on the screen in under 10 minutes. Gloss is a fork and cleanup of ANUPlot, which has been used for teaching first year computer science at the [http://cs.anu.edu.au ANU] for the last few years. Its main goal is to allow total beginners to get something working with a minimum of fuss. == Download == === From Hackage === * [http://hackage.haskell.org/package/gloss gloss] * [http://hackage.haskell.org/package/gloss-examples gloss-examples] === With cabal === If you have cabal installed you should be able to do: {{{ cabal update cabal install gloss cabal install gloss-examples gloss-styrene }}} === From the darcs repo === The source repos are at http://code.ouroborus.net/gloss {{{ darcs get http://code.ouroborus.net/gloss/gloss-stable cd gloss-stable cd gloss cabal install }}} Then again for the `examples` directory in that same repo. == Frequently Asked Questions (FAQ) == Q: Gloss freezes in `ghci`. It tries to draw the window but I don't get a picture and must kill the process.[[br]] A0: Upgrade to GHC 7.2[[br]] A1: Start `ghci` with `-fno-ghci-sandbox`[[br]] A2: Try installing gloss to use the GLFW window manager interface instead of GLUT: `cabal install gloss --flags="GLFW -GLUT"` Q: The window doesn't reshape properly under Xmonad.[[br]] A: Use the GLFW window manager interface instead, or prod the Xmonad people about it. This is probably an incompatibility between Xmonad and GLUT, but the main Gloss developer doesn't use Xmonad. == Further Information == To report bugs or request features, post in the [http://groups.google.com/group/haskell-gloss haskell-gloss] Google group. To get an account on the trac, send email to `trac@ouroborus.net` == Examples == These are some of the examples included in the [http://hackage.haskell.org/package/gloss-examples gloss-examples] package: || Hello || Lifespan || Styrene || Tree || Clock || Zen || || [[Image(WikiStart:gloss-hello-thumb.png)]] || [[Image(WikiStart:gloss-lifespan-thumb.png)]] || [[Image(WikiStart:gloss-styrene-thumb.png)]] || [[Image(WikiStart:gloss-tree-thumb.png)]] || [[Image(WikiStart:gloss-clock-thumb.png)]] || [[Image(WikiStart:gloss-zen-thumb.png)]] || || [http://code.ouroborus.net/gloss/gloss-stable/examples/Hello/Main.hs code] [http://code.ouroborus.net/gloss/wiki/images/gloss-hello.png result] || [http://code.ouroborus.net/gloss/gloss-stable/examples/Lifespan/ code] [http://code.ouroborus.net/gloss/wiki/images/gloss-lifespan.png result] || [http://code.ouroborus.net/gloss/gloss-stable/examples/Styrene/ code] [http://code.ouroborus.net/gloss/wiki/images/gloss-styrene.png result] || [http://code.ouroborus.net/gloss/gloss-stable/examples/Tree/Main.hs code] [http://code.ouroborus.net/gloss/wiki/images/gloss-tree.png result] || [http://code.ouroborus.net/gloss/gloss-stable/examples/Clock/Main.hs code] [http://code.ouroborus.net/gloss/wiki/images/gloss-clock.png result] || [http://code.ouroborus.net/gloss/gloss-stable/examples/Zen/Main.hs code] [http://www.youtube.com/watch?v=vm78Tkc-KhM video] ||