Fix bloom resize bug, bloom itself could use improvement
This commit is contained in:
+48
-38
@@ -1,6 +1,7 @@
|
||||
module Shader.Compile
|
||||
( makeShader
|
||||
--, makeVShader
|
||||
, makeByteStringShader
|
||||
, makeByteStringShaderUsingVAO
|
||||
, makeShaderSized
|
||||
, makeShaderUsingShaderVAO
|
||||
, makeSourcedShader
|
||||
@@ -15,43 +16,6 @@ import qualified Data.ByteString as BS
|
||||
import Control.Monad
|
||||
--import Control.Lens
|
||||
import Graphics.Rendering.OpenGL hiding (Point,translate,scale,imageHeight)
|
||||
|
||||
--{- |
|
||||
--Compiles a vertex shader found within the shader directory.
|
||||
--The shader is made up of files begining with the inputted string with extensions .vert, .geom etc.
|
||||
---}
|
||||
--makeVShader
|
||||
-- :: String -- ^ First part of the name of the shader
|
||||
-- -> [ShaderType] -- ^ Filetype extensions
|
||||
-- -> [Int] -- ^ The input vertex sizes
|
||||
-- -> EPrimitiveMode
|
||||
-- -> IO VShader
|
||||
--makeVShader s shaderlist sizes pm = do
|
||||
-- prog <- makeSourcedShader s shaderlist
|
||||
-- vaob <- setupVAO sizes
|
||||
-- return $ VShader
|
||||
-- { _vshaderProgram = prog
|
||||
-- , _vshaderVAO = vaob
|
||||
-- , _vshaderTexture = Nothing
|
||||
-- , _vshaderCustomUnis = []
|
||||
-- , _vshaderDrawPrimitive = pm
|
||||
-- }
|
||||
|
||||
-- | Takes the VAO from another shader
|
||||
makeShaderUsingShaderVAO
|
||||
:: String -- ^ First part of the name of the shader
|
||||
-> [ShaderType] -- ^ Filetype extensions
|
||||
-> EPrimitiveMode
|
||||
-> FullShader
|
||||
-> IO FullShader
|
||||
makeShaderUsingShaderVAO s shaderlist pm fs = do
|
||||
prog <- makeSourcedShader s shaderlist
|
||||
return $ fs
|
||||
{ _shaderProgram = prog
|
||||
, _shaderDrawPrimitive = pm
|
||||
, _shaderTexture = Nothing
|
||||
, _shaderCustomUnis = []
|
||||
}
|
||||
{- |
|
||||
Compiles a full shader found within the shader directory.
|
||||
The shader is made up of files begining with the inputted string with extensions .vert, .geom etc.
|
||||
@@ -72,6 +36,52 @@ makeShader s shaderlist sizes pm = do
|
||||
, _shaderTexture = Nothing
|
||||
, _shaderCustomUnis = []
|
||||
}
|
||||
makeByteStringShader
|
||||
:: String -- ^ (Arbitrary) name of the shader
|
||||
-> [(ShaderType,BS.ByteString)] -- ^ Filetype extensions and shader data
|
||||
-> [Int] -- ^ The input vertex sizes
|
||||
-> EPrimitiveMode
|
||||
-> IO FullShader
|
||||
makeByteStringShader s shaderlist sizes pm = do
|
||||
prog <- makeShaderProgram s shaderlist
|
||||
vaob <- setupVAO sizes
|
||||
return $ FullShader
|
||||
{ _shaderProgram = prog
|
||||
, _shaderVAO = vaob
|
||||
, _shaderDrawPrimitive = pm
|
||||
, _shaderTexture = Nothing
|
||||
, _shaderCustomUnis = []
|
||||
}
|
||||
makeByteStringShaderUsingVAO
|
||||
:: String -- ^ (Arbitrary) name of the shader
|
||||
-> [(ShaderType,BS.ByteString)] -- ^ Filetype extensions and shader data
|
||||
-> EPrimitiveMode
|
||||
-> FullShader
|
||||
-> IO FullShader
|
||||
makeByteStringShaderUsingVAO s shaderlist pm fs = do
|
||||
prog <- makeShaderProgram s shaderlist
|
||||
return $ fs
|
||||
{ _shaderProgram = prog
|
||||
, _shaderDrawPrimitive = pm
|
||||
, _shaderTexture = Nothing
|
||||
, _shaderCustomUnis = []
|
||||
}
|
||||
|
||||
-- | Takes the VAO from another shader
|
||||
makeShaderUsingShaderVAO
|
||||
:: String -- ^ First part of the name of the shader
|
||||
-> [ShaderType] -- ^ Filetype extensions
|
||||
-> EPrimitiveMode
|
||||
-> FullShader
|
||||
-> IO FullShader
|
||||
makeShaderUsingShaderVAO s shaderlist pm fs = do
|
||||
prog <- makeSourcedShader s shaderlist
|
||||
return $ fs
|
||||
{ _shaderProgram = prog
|
||||
, _shaderDrawPrimitive = pm
|
||||
, _shaderTexture = Nothing
|
||||
, _shaderCustomUnis = []
|
||||
}
|
||||
{- |
|
||||
Compiles a full shader found within the shader directory.
|
||||
The shader is made up of files begining with the inputted string with extensions .vert, .geom etc.
|
||||
|
||||
Reference in New Issue
Block a user