Cleanup: remove uniforms from shader datatype

This commit is contained in:
2023-03-20 01:19:10 +00:00
parent 33f31aa385
commit 32ecf46343
17 changed files with 24 additions and 99 deletions
-13
View File
@@ -2,7 +2,6 @@ module Shader.AuxAddition
( addSamplerTexture2D
, vaddTextureNoFilter
, addTextureArray
, addUniforms
, initTexture2D
, initTexture2DArray
, tilesToLine -- ^ kept in case it is needed in the future
@@ -10,10 +9,6 @@ module Shader.AuxAddition
import Data.Preload.Render
import Unsafe.Coerce
import Shader.Data
import Control.Monad
import qualified Data.ByteString as BS
import Data.ByteString.Char8 (pack)
import qualified Data.Vector as V
import Data.List.Extra
import Codec.Picture
import qualified Data.Vector.Storable as VS
@@ -142,11 +137,3 @@ tilesToLine
-> [a]
-> [a]
tilesToLine n w = concat . concat . transpose . chunksOf n . chunksOf w
addUniforms :: [String] -> FullShader -> IO FullShader
addUniforms uniStrings shad = do foldM addUniform shad uniStrings
addUniform :: FullShader -> String -> IO FullShader
addUniform shad unistr = BS.useAsCString (pack unistr) $ \cstr -> do
loc <- glGetUniformLocation (_shadName shad) cstr
return $ shad & shadUnis %~ (V.++ V.fromList [loc])
-5
View File
@@ -43,7 +43,6 @@ makeShader s shaderlist sizes pm = do
, _shadVAO = vao
, _shadPrim' = pm
, _shadTex' = Nothing
, _shadUnis = mempty
}
, vbo)
@@ -67,7 +66,6 @@ makeShader4 s shaderlist sizes strd pm vbo = do
, _shadVAO = vao
, _shadPrim' = pm
, _shadTex' = Nothing
, _shadUnis = mempty
}
setupVBO :: Int -> IO VBO
@@ -108,7 +106,6 @@ makeByteStringShaderUsingVAO s shaderlist pm vao = do
, _shadVAO = vao
, _shadPrim' = pm
, _shadTex' = Nothing
, _shadUnis = mempty
}
-- | Takes the VAO from elsewhere
@@ -128,7 +125,6 @@ makeShaderUsingVAO s shaderlist pm theVAO = do
, _shadVAO = theVAO
, _shadPrim' = pm
, _shadTex' = Nothing
, _shadUnis = mempty
}
{- |
@@ -154,7 +150,6 @@ makeShaderSized s shaderlist sizes ndraw pm = do
, _shadVAO = vao
, _shadPrim' = pm
, _shadTex' = Nothing
, _shadUnis = mempty
}
, vbo)
-3
View File
@@ -28,13 +28,11 @@ module Shader.Data
, shadVAO
, shadPrim'
, shadTex'
, shadUnis
-- | Synonyms
, vert
, geom
, frag
) where
import Data.Vector (Vector)
import Graphics.GL.Core45
import Foreign
import Control.Lens
@@ -44,7 +42,6 @@ data FullShader = FullShader
, _shadVAO :: VAO
, _shadPrim' :: EPrimitiveMode
, _shadTex' :: Maybe ShaderTexture
, _shadUnis :: Vector GLint
}
{- | Vertex array object: contains the reference to the object,
and its buffer targets. -}