Reduce rendertype down to vertex information
This commit is contained in:
@@ -6,6 +6,7 @@ module Shader.Data
|
||||
( VAO (..)
|
||||
, VBO (..)
|
||||
, FullShader (..)
|
||||
, VShader (..)
|
||||
, ShaderTexture (..)
|
||||
, EPrimitiveMode (..)
|
||||
-- | Lens functions
|
||||
@@ -19,6 +20,13 @@ module Shader.Data
|
||||
, shaderTexture
|
||||
, shaderCustomUnis
|
||||
|
||||
, vshaderProgram
|
||||
, vshaderVAO
|
||||
, vshaderDrawPrimitive
|
||||
, vshaderTexture
|
||||
, vshaderCustomUnis
|
||||
, vshaderPokeTest
|
||||
|
||||
-- , textureObject
|
||||
) where
|
||||
import Picture.Data
|
||||
@@ -42,6 +50,14 @@ data VBO = VBO
|
||||
, _vboPointer :: Ptr Float
|
||||
, _vboAttribSizes :: [Int] -- ^ It is not clear to me if this is necessary to store or not
|
||||
}
|
||||
data VShader = VShader
|
||||
{ _vshaderProgram :: Program
|
||||
, _vshaderVAO :: VAO
|
||||
, _vshaderDrawPrimitive :: EPrimitiveMode
|
||||
, _vshaderTexture :: Maybe ShaderTexture
|
||||
, _vshaderCustomUnis :: [UniformLocation]
|
||||
, _vshaderPokeTest :: VertexType -> Bool
|
||||
}
|
||||
|
||||
{- | Datatype containing the necessary information for a single shader. -}
|
||||
data FullShader = FullShader
|
||||
@@ -72,3 +88,4 @@ data EPrimitiveMode
|
||||
|
||||
makeLenses ''VAO
|
||||
makeLenses ''FullShader
|
||||
makeLenses ''VShader
|
||||
|
||||
Reference in New Issue
Block a user