gloss-1.9.3.1: Graphics/Gloss.hs
-- | Gloss hides the pain of drawing simple vector graphics behind a nice data type and
-- a few display functions.
--
-- Getting something on the screen is as easy as:
--
-- @
-- import Graphics.Gloss
-- main = `display` (InWindow \"Nice Window\" (200, 200) (10, 10)) `white` (`Circle` 80)
-- @
--
-- Once the window is open you can use the following:
--
-- * Quit - esc-key.
--
-- * Move Viewport - left-click drag, arrow keys.
--
-- * Rotate Viewport - right-click drag, control-left-click drag, or home\/end-keys.
--
-- * Zoom Viewport - mouse wheel, or page up\/down-keys.
--
-- Animations can be constructed similarly using the `animate`.
--
-- If you want to run a simulation based around finite time steps then try
-- `simulate`.
--
-- If you want to manage your own key\/mouse events then use `play`.
--
-- Gloss uses OpenGL under the hood, but you don't have to worry about any of that.
--
-- Gloss programs should be compiled with @-threaded@, otherwise the GHC runtime
-- will limit the frame-rate to around 20Hz.
--
-- To build gloss using the GLFW window manager instead of GLUT use
-- @cabal install gloss --flags=\"GLFW -GLUT\"@
--
-- @
-- Release Notes:
--
-- For 1.9:
-- Thanks to Elise Huard
-- * Split rendering code into gloss-rendering package.
--
-- For 1.8
-- Thanks to Francesco Mazzoli
-- * Factored out ViewPort and ViewState handling into user visible modules.
--
-- For 1.7:
-- * Tweaked circle level-of-detail reduction code.
-- * Increased frame rate cap to 100hz.
-- Thanks to Doug Burke
-- * Primitives for drawing arcs and sectors.
-- Thanks to Thomas DuBuisson
-- * IO versions of animate, simulate and play.
--
-- For 1.6:
-- Thanks to Anthony Cowley
-- * Full screen display mode.
--
-- For 1.5:
-- * O(1) Conversion of ForeignPtrs to bitmaps.
-- * An extra flag on the Bitmap constructor allows bitmaps to be cached
-- in texture memory between frames.
-- @
--
-- For more information, check out <http://gloss.ouroborus.net>.
--
module Graphics.Gloss
( module Graphics.Gloss.Data.Picture
, module Graphics.Gloss.Data.Color
, module Graphics.Gloss.Data.Bitmap
, Display(..)
, display
, animate
, simulate
, play)
where
import Graphics.Gloss.Data.Display
import Graphics.Gloss.Data.Picture
import Graphics.Gloss.Data.Color
import Graphics.Gloss.Data.Bitmap
import Graphics.Gloss.Interface.Pure.Display
import Graphics.Gloss.Interface.Pure.Animate
import Graphics.Gloss.Interface.Pure.Simulate
import Graphics.Gloss.Interface.Pure.Game