Refactor vao preload

This commit is contained in:
2021-02-19 12:41:46 +01:00
parent f4db9bf9a1
commit f6efe98181
16 changed files with 441 additions and 485 deletions
+24
View File
@@ -6,6 +6,8 @@ module Shaders
,makeTextureShader
,makeBasicShader
,makeFadeShader
,makeCircleShader
,makeArcShader
)
where
import Graphics.Rendering.OpenGL
@@ -34,6 +36,28 @@ setupBasicShader = do
shaderProgram <- makeBasicShader
currentProgram $= (Just shaderProgram)
makeCircleShader :: IO Program
makeCircleShader = do
vsSource <- BS.readFile "shader/circle.vert"
gsSource <- BS.readFile "shader/circle.geom"
fsSource <- BS.readFile "shader/circle.frag"
makeShaderProgram [(VertexShader, vsSource )
,(GeometryShader, gsSource )
,(FragmentShader, fsSource )
]
makeArcShader :: IO Program
makeArcShader = do
vsSource <- BS.readFile "shader/arc.vert"
gsSource <- BS.readFile "shader/arc.geom"
fsSource <- BS.readFile "shader/arc.frag"
makeShaderProgram [(VertexShader, vsSource )
,(GeometryShader, gsSource )
,(FragmentShader, fsSource )
]
makeFadeShader :: IO Program
makeFadeShader = do
vsSource <- BS.readFile "shader/fadeCircle.vert"