From 44134d7f8f3c13ba232b771eb0b53c249f009eff Mon Sep 17 00:00:00 2001 From: Jeanne-Kamikaze Date: Fri, 22 Feb 2013 17:09:14 +0100 Subject: Switched to Core32; Added GeometryShader to ShaderType --- Spear/GL.hs | 7 ++++--- Spear/Render/AnimatedModel.hs | 1 - Spear/Render/Program.hs | 4 +--- Spear/Render/StaticModel.hs | 1 - Spear/Render/Triangle.hs | 4 +--- Spear/Scene/Loader.hs | 3 +-- 6 files changed, 7 insertions(+), 13 deletions(-) diff --git a/Spear/GL.hs b/Spear/GL.hs index 05e439a..eb84492 100644 --- a/Spear/GL.hs +++ b/Spear/GL.hs @@ -74,7 +74,7 @@ module Spear.GL , printGLError , assertGL -- * OpenGL -, module Graphics.Rendering.OpenGL.Raw.Core31 +, module Graphics.Rendering.OpenGL.Raw.Core32 , Ptr , nullPtr ) @@ -99,7 +99,7 @@ import Foreign.Marshal.Utils as Foreign (with) import Foreign.Marshal.Alloc (alloca) import Foreign.Marshal.Array (withArray) import Foreign.Storable (peek) -import Graphics.Rendering.OpenGL.Raw.Core31 +import Graphics.Rendering.OpenGL.Raw.Core32 import System.Directory (doesFileExist, getCurrentDirectory, setCurrentDirectory) import System.IO (hPutStrLn, stderr) import Unsafe.Coerce @@ -127,11 +127,12 @@ instance ResourceClass GLSLProgram where getResource = getProgramKey -- | Supported shader types. -data ShaderType = VertexShader | FragmentShader deriving (Eq, Show) +data ShaderType = VertexShader | FragmentShader | GeometryShader deriving (Eq, Show) toGLShader :: ShaderType -> GLenum toGLShader VertexShader = gl_VERTEX_SHADER toGLShader FragmentShader = gl_FRAGMENT_SHADER +toGLShader GeometryShader = gl_GEOMETRY_SHADER -- | Apply the given function to the program's id. withGLSLProgram :: GLSLProgram -> (GLuint -> a) -> a diff --git a/Spear/Render/AnimatedModel.hs b/Spear/Render/AnimatedModel.hs index be3e2e3..9c05109 100644 --- a/Spear/Render/AnimatedModel.hs +++ b/Spear/Render/AnimatedModel.hs @@ -40,7 +40,6 @@ import Spear.Render.Program import Control.Applicative ((<$>), (<*>)) import qualified Data.Vector as V -import Graphics.Rendering.OpenGL.Raw.Core31 import Unsafe.Coerce (unsafeCoerce) type AnimationSpeed = Float diff --git a/Spear/Render/Program.hs b/Spear/Render/Program.hs index 6e94ca5..8f3fba7 100644 --- a/Spear/Render/Program.hs +++ b/Spear/Render/Program.hs @@ -11,9 +11,7 @@ module Spear.Render.Program ) where -import Spear.GL (GLSLProgram) - -import Graphics.Rendering.OpenGL.Raw.Core31 +import Spear.GL data StaticProgram = StaticProgram { staticProgram :: GLSLProgram diff --git a/Spear/Render/StaticModel.hs b/Spear/Render/StaticModel.hs index 42cf9d0..cadf350 100644 --- a/Spear/Render/StaticModel.hs +++ b/Spear/Render/StaticModel.hs @@ -29,7 +29,6 @@ import Spear.Render.Model import Spear.Render.Program import qualified Data.Vector as V -import Graphics.Rendering.OpenGL.Raw.Core31 import Unsafe.Coerce (unsafeCoerce) data StaticModelResource = StaticModelResource diff --git a/Spear/Render/Triangle.hs b/Spear/Render/Triangle.hs index 296349a..08a2c01 100644 --- a/Spear/Render/Triangle.hs +++ b/Spear/Render/Triangle.hs @@ -4,7 +4,5 @@ module Spear.Render.Triangle where -import Graphics.Rendering.OpenGL.Raw.Core31 - - +import Spear.GL diff --git a/Spear/Scene/Loader.hs b/Spear/Scene/Loader.hs index 22657bd..4467849 100644 --- a/Spear/Scene/Loader.hs +++ b/Spear/Scene/Loader.hs @@ -39,7 +39,6 @@ import Control.Monad.Trans (lift) import Data.List as L (find) import Data.Map as M import qualified Data.StateVar as SV (get) -import Graphics.Rendering.OpenGL.Raw.Core31 import Text.Printf (printf) type Loader = Game SceneResources @@ -204,7 +203,7 @@ rotateModel (Rotation ax ay az order) model = loadTexture :: FilePath -> Loader GL.Texture loadTexture file = loadResource file textures addTexture $ - GL.loadTextureImage file gl_LINEAR gl_LINEAR + GL.loadTextureImage file GL.gl_LINEAR GL.gl_LINEAR newShaderProgram :: SceneGraph -> Loader () newShaderProgram (SceneLeaf _ props) = do -- cgit v1.2.3