summaryrefslogtreecommitdiffstats
path: root/Render.hs
diff options
context:
space:
mode:
Diffstat (limited to 'Render.hs')
-rw-r--r--Render.hs12
1 files changed, 9 insertions, 3 deletions
diff --git a/Render.hs b/Render.hs
index b11e2ff..ec34e78 100644
--- a/Render.hs
+++ b/Render.hs
@@ -9,6 +9,9 @@ import Tank
import Control.Monad.State
+import Data.Fixed
+import Data.Ratio
+
import Graphics.Rendering.OpenGL.GL (($=), GLfloat)
import Graphics.Rendering.OpenGL.GL.BeginEnd (renderPrimitive, PrimitiveMode(..))
import Graphics.Rendering.OpenGL.GL.CoordTrans (matrixMode, MatrixMode(..), viewport, Position(..), Size(..), loadIdentity, ortho)
@@ -38,13 +41,16 @@ resize w h = do
render :: Game ()
render = do
tank <- liftM head $ gets tanks
- let x = posx tank
- y = posy tank
+ let x = toFloat . posx $ tank
+ y = toFloat . posy $ tank
liftIO $ do
clear [ColorBuffer]
renderPrimitive Triangles $ do
- vertex $ Vertex2 (x-0.5 :: GLfloat) (y+0.5 :: GLfloat)
+ vertex $ Vertex2 (x-0.5 :: GLfloat) (y-0.5 :: GLfloat)
vertex $ Vertex2 (x+0.5 :: GLfloat) (y+0.5 :: GLfloat)
vertex $ Vertex2 (x+0.5 :: GLfloat) (y-0.5 :: GLfloat)
+
+toFloat :: Real a => a -> GLfloat
+toFloat = fromRational . toRational \ No newline at end of file