aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYann Herklotz <git@yannherklotz.com>2020-12-30 11:25:42 +0000
committerYann Herklotz <git@yannherklotz.com>2020-12-30 11:25:42 +0000
commitba370266415757f0880db8d1a650894fc1f37a6d (patch)
treec4408a90f9ea38fad06d9f78627c6a87bb50b131
parent36558a69e0d373aae8e62a4b8104790114ee2cce (diff)
downloadVivant-ba370266415757f0880db8d1a650894fc1f37a6d.tar.gz
Vivant-ba370266415757f0880db8d1a650894fc1f37a6d.zip
Add terrain and renderer classes
-rw-r--r--src/Vivant/Renderer.hs15
-rw-r--r--src/Vivant/Terrain.hs6
2 files changed, 21 insertions, 0 deletions
diff --git a/src/Vivant/Renderer.hs b/src/Vivant/Renderer.hs
new file mode 100644
index 0000000..ca623e7
--- /dev/null
+++ b/src/Vivant/Renderer.hs
@@ -0,0 +1,15 @@
+module Vivant.Renderer
+ (Renderer(..))
+where
+
+import qualified Graphics.Rendering.OpenGL as GL
+import Linear
+import Foreign.Ptr
+
+data Renderer = Renderer
+ { rendererProgram :: Maybe GL.Program,
+ rendererVao :: Maybe GL.VertexArrayObject,
+ rendererModelP :: Ptr (M44 Float)
+ } deriving Show
+
+draw :: Renderer -> IO ()
diff --git a/src/Vivant/Terrain.hs b/src/Vivant/Terrain.hs
new file mode 100644
index 0000000..9d5201a
--- /dev/null
+++ b/src/Vivant/Terrain.hs
@@ -0,0 +1,6 @@
+module Vivant.Terrain where
+
+data Terrain = Terrain
+ {
+ terrainVao ::
+ }