Continue work on shadow rendering

This commit is contained in:
2023-03-14 11:20:38 +00:00
parent 9947979b52
commit 6af041bb8c
20 changed files with 418 additions and 381 deletions
+1 -1
View File
@@ -91,5 +91,5 @@ addUniforms uniStrings shad = do foldM addUniform shad uniStrings
addUniform :: FullShader -> String -> IO FullShader
addUniform shad unistr = BS.useAsCString (pack unistr) $ \cstr -> do
loc <- glGetUniformLocation (_shadProg' shad) cstr
loc <- glGetUniformLocation (_shadName shad) cstr
return $ shad & shadUnis' %~ (V.++ V.fromList [loc])
+4 -4
View File
@@ -35,7 +35,7 @@ makeShader s shaderlist sizes pm = do
vaob <- setupVAO sizes
return $
FullShader
{ _shadProg' = prog
{ _shadName = prog
, _shadVAO' = vaob
, _shadPrim' = pm
, _shadTex' = Nothing
@@ -54,7 +54,7 @@ makeByteStringShaderUsingVAO s shaderlist pm vao = do
prog <- makeShaderProgram s shaderlist
return $
FullShader
{ _shadProg' = prog
{ _shadName = prog
, _shadVAO' = vao
, _shadPrim' = pm
, _shadTex' = Nothing
@@ -74,7 +74,7 @@ makeShaderUsingVAO s shaderlist pm theVAO = do
prog <- makeSourcedShader s shaderlist
return $
FullShader
{ _shadProg' = prog
{ _shadName = prog
, _shadVAO' = theVAO
, _shadPrim' = pm
, _shadTex' = Nothing
@@ -101,7 +101,7 @@ makeShaderSized s shaderlist sizes ndraw pm = do
vaob <- setupVAOSized ndraw sizes
return $
FullShader
{ _shadProg' = prog
{ _shadName = prog
, _shadVAO' = vaob
, _shadPrim' = pm
, _shadTex' = Nothing
+2 -2
View File
@@ -19,7 +19,7 @@ module Shader.Data
, eboName
, eboPtr
, shadProg'
, shadName
, shadVAO'
, shadPrim'
, shadTex'
@@ -35,7 +35,7 @@ import Foreign
import Control.Lens
{- | Datatype containing the necessary information for a single shader. -}
data FullShader = FullShader
{ _shadProg' :: GLuint -- should be shaderID
{ _shadName :: GLuint -- should be shaderID
, _shadVAO' :: VAO
, _shadPrim' :: EPrimitiveMode
, _shadTex' :: Maybe ShaderTexture