From dafe16f191f99dc1199a5b386fad916a78c5c4f1 Mon Sep 17 00:00:00 2001 From: Matthias Schiffer Date: Mon, 12 Apr 2010 14:40:31 +0200 Subject: Some improvements on coordinate calculation & player rendering --- src/HWiidPlayer.hs | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'src/HWiidPlayer.hs') diff --git a/src/HWiidPlayer.hs b/src/HWiidPlayer.hs index d1df2e5..db35871 100644 --- a/src/HWiidPlayer.hs +++ b/src/HWiidPlayer.hs @@ -5,7 +5,7 @@ module HWiidPlayer ( HWiidPlayer ) where import Control.Monad -import Data.Bits +import Data.Bits hiding (rotate) import Data.Function (on) import Data.List (sortBy) import Data.Maybe @@ -14,7 +14,7 @@ import Data.Typeable import HWiid import Graphics.Rendering.OpenGL.GL (GLfloat, Vector3(..)) import Graphics.Rendering.OpenGL.GL.BeginEnd (unsafeRenderPrimitive, PrimitiveMode(..)) -import Graphics.Rendering.OpenGL.GL.CoordTrans (unsafePreservingMatrix, translate) +import Graphics.Rendering.OpenGL.GL.CoordTrans (unsafePreservingMatrix, translate, rotate) import Graphics.Rendering.OpenGL.GL.VertexSpec @@ -65,7 +65,8 @@ instance Player HWiidPlayer where renderPlayer (HWiidPlayer _ _ aims) = unsafePreservingMatrix $ do let (x, y) = mulV (1/(fromIntegral $ length aims)) $ foldr addV (0, 0) aims - translate $ Vector3 x y (0 :: GLfloat) + translate $ Vector3 x y (0.2 :: GLfloat) + rotate 30 $ Vector3 1 0 (0 :: GLfloat) unsafeRenderPrimitive Quads $ do texCoord $ TexCoord2 (0 :: GLfloat) (0 :: GLfloat) -- cgit v1.2.3