Commit before simplifying some shader types
This commit is contained in:
@@ -19,6 +19,7 @@ data RenderData = RenderData
|
||||
, _lightingLineShadowShader :: FullShader
|
||||
, _lightingCapShader :: FullShader
|
||||
, _lightingTextureShader :: FullShader
|
||||
, _alphaDivideShader :: Shader
|
||||
, _shadowEdgeShader :: FullShader
|
||||
, _shadowCapShader :: FullShader
|
||||
, _shadowWallShader :: FullShader
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user