Commit before simplifying some shader types

This commit is contained in:
2023-03-21 13:35:13 +00:00
parent 7caf7ba987
commit e56ca3dd8d
3 changed files with 20 additions and 2 deletions
+1
View File
@@ -19,6 +19,7 @@ data RenderData = RenderData
, _lightingLineShadowShader :: FullShader
, _lightingCapShader :: FullShader
, _lightingTextureShader :: FullShader
, _alphaDivideShader :: Shader
, _shadowEdgeShader :: FullShader
, _shadowCapShader :: FullShader
, _shadowWallShader :: FullShader
+2 -2
View File
@@ -144,6 +144,7 @@ preloadRender = do
ptr
0
screentexturevao <- setupVAOvbo' [2,2] 4 screentexturevbo
alphadivideshader <- makeShader4UsingVAO "texture2D/alphaDivide" [vert,frag] GL_TRIANGLE_STRIP screentexturevao
fsShad <- makeShaderUsingVAO "texture/simple" [vert, frag] ETriangleStrip screentexturevao
bloomBlurShad <- makeShaderUsingVAO "texture/bloomBlur" [vert, frag] ETriangleStrip screentexturevao
colorBlurShad <- makeShaderUsingVAO "texture/colorBlur" [vert, frag] ETriangleStrip screentexturevao
@@ -170,8 +171,6 @@ preloadRender = do
(cloudshader, cloudebo)
<- makeShaderEBO "cloud/basic" [vert, frag] cloudverxsizes (sum cloudverxsizes)
GL_TRIANGLES cloudvbo
-- -- bind fixed vertex data
-- bufferPokedVBO (snd fsShad) 4
framebuf2 <- setupTextureFramebuffer 800 600
framebuf3 <- setupTextureFramebuffer 800 600
@@ -229,6 +228,7 @@ preloadRender = do
, _windowShader = wallBlankShad{_shadVAO = winColVAO}
-- , _textureArrayShader = textArrayShad
, _fullscreenShader = fsShad
, _alphaDivideShader = alphadivideshader
, _lightingTextureShader = lightingTextureShad
, _bloomBlurShader = bloomBlurShad
, _colorBlurShader = colorBlurShad
+17
View File
@@ -4,6 +4,7 @@ module Shader.Compile (
makeShaderEBO,
makeShader,
makeShader4,
makeShader4UsingVAO,
makeByteStringShaderUsingVAO,
makeShaderSized,
makeShaderUsingVAO,
@@ -93,6 +94,22 @@ makeShader4 s shaderlist sizes strd pm vbo = do
, _shadTex' = Nothing
}
makeShader4UsingVAO ::
-- | First part of the name of the shader
String ->
-- | shader types
[GLenum] ->
GLenum ->
VAO ->
IO Shader
makeShader4UsingVAO s shaderlist pm vao = do
prog <- makeSourcedShader s shaderlist
return $ Shader
{ _shaderUINT = prog
, _shaderVAO = vao
, _shaderPrimitive = pm
}
setupVBO :: Int -> IO VBO
setupVBO vertexsize = do
vboname <- mglCreate glCreateBuffers