Safe Haskell | None |
---|---|
Language | Haskell2010 |
The main module. You should also import a backend:
- FWGL.Backend.JavaScript: GHCJS/WebGL backend (contained in fwgl-javascript)
- FWGL.Backend.GLFW.GL20: GLFW/OpenGL 2.0 backend (contained in fwgl-glfw)
And a graphics system:
- FWGL.Graphics.D2: 2D graphics
- FWGL.Graphics.D3: 3D graphics
- FWGL.Graphics.Custom: advanced custom graphics
FWGL.Shader contains the EDSL to make custom shaders.
- module FWGL.Audio
- module FWGL.Input
- module FWGL.Utils
- module FRP.Yampa
- draw :: BackendIO => [Layer] -> Output
- run :: BackendIO => SF (Input ()) Output -> IO ()
- run' :: BackendIO => IO inp -> SF (Input inp) Output -> IO ()
- loadOBJ :: BackendIO => FilePath -> IO (Either String (Geometry Geometry3))
- loadOBJAsync :: BackendIO => FilePath -> (Either String (Geometry Geometry3) -> IO ()) -> IO ()
- data Output
- (.>) :: Output -> Output -> Output
- io :: IO () -> Output
- freeGeometry :: BackendIO => Geometry i -> Output
- freeTexture :: BackendIO => Texture -> Output
- freeProgram :: BackendIO => Program g i -> Output
Documentation
module FWGL.Audio
module FWGL.Input
module FWGL.Utils
module FRP.Yampa
Run a FWGL program, using custom inputs.
loadOBJ :: BackendIO => FilePath -> IO (Either String (Geometry Geometry3))
Load a model from an OBJ file.
loadOBJAsync :: BackendIO => FilePath -> (Either String (Geometry Geometry3) -> IO ()) -> IO ()
Load a model from an OBJ file asynchronously.
data Output
The general output.
freeGeometry :: BackendIO => Geometry i -> Output
Delete a Geometry
from the GPU.
freeTexture :: BackendIO => Texture -> Output
Delete a Texture
from the GPU.
freeProgram :: BackendIO => Program g i -> Output
Delete a Program
from the GPU.