Cleanup shader code
This commit is contained in:
+14
-9
@@ -52,13 +52,15 @@ preloadRender = do
|
||||
-- bindVertexArrayObject $= Just wpVAOname
|
||||
wpVAOname <- mglCreate glCreateVertexArrays
|
||||
glBindVertexArray wpVAOname
|
||||
setupVertexAttribPointer wpVAOname wpVBOname 0 4 8 0
|
||||
glVertexArrayVertexBuffer wpVAOname 0 wpVBOname 0 (fromIntegral $ floatSize * 8)
|
||||
setupVertexAttribPointer wpVAOname 0 4 0
|
||||
--wpColVAOname <- genObjectName
|
||||
--bindVertexArrayObject $= Just wpColVAOname
|
||||
wpColVAOname <- mglCreate glCreateVertexArrays
|
||||
glBindVertexArray wpColVAOname
|
||||
setupVertexAttribPointer wpColVAOname wpVBOname 0 4 8 0
|
||||
setupVertexAttribPointer wpColVAOname wpVBOname 1 4 8 4
|
||||
glVertexArrayVertexBuffer wpColVAOname 0 wpVBOname 0 (fromIntegral $ floatSize * 8)
|
||||
setupVertexAttribPointer wpColVAOname 0 4 0
|
||||
setupVertexAttribPointer wpColVAOname 1 4 4
|
||||
let wpVAO = VAO{_vaoName = wpVAOname, _vaoAttribSizes = [4], _vaoStride = 8}
|
||||
wpColVAO = VAO{_vaoName = wpColVAOname, _vaoAttribSizes = [4,4], _vaoStride = 8}
|
||||
-- setup window points VBO, VAOs and shaders
|
||||
@@ -73,8 +75,9 @@ preloadRender = do
|
||||
--bindVertexArrayObject $= Just winColVAOname
|
||||
winColVAOname <- mglCreate glCreateVertexArrays
|
||||
glBindVertexArray winColVAOname
|
||||
setupVertexAttribPointer winColVAOname winVBOname 0 4 8 0
|
||||
setupVertexAttribPointer winColVAOname winVBOname 1 4 8 4
|
||||
glVertexArrayVertexBuffer winColVAOname 0 winVBOname 0 (fromIntegral $ floatSize * 8)
|
||||
setupVertexAttribPointer winColVAOname 0 4 0
|
||||
setupVertexAttribPointer winColVAOname 1 4 4
|
||||
let winColVAO = VAO
|
||||
{_vaoName = winColVAOname, _vaoAttribSizes = [4,4], _vaoStride = 8}
|
||||
-- setup shape geometry/cap VBO and two VAOs
|
||||
@@ -86,7 +89,7 @@ preloadRender = do
|
||||
nullPtr
|
||||
GL_STREAM_DRAW
|
||||
let shEBO = EBO{_eboName = shEBOname, _eboPtr = shEBOptr}
|
||||
shVBO <- trueSetupVBO 8
|
||||
shVBO <- setupVBO4 8
|
||||
-- shPosColVAOname <- mglCreate glCreateVertexArrays
|
||||
-- glBindVertexArray shPosColVAOname
|
||||
-- setupVertexAttribPointer shPosColVAOname (shVBO ^. vboName) 0 3 7 0
|
||||
@@ -97,7 +100,8 @@ preloadRender = do
|
||||
--bindVertexArrayObject $= Just shPosVAOname
|
||||
shPosVAOname <- mglCreate glCreateVertexArrays
|
||||
glBindVertexArray shPosVAOname
|
||||
setupVertexAttribPointer shPosVAOname (shVBO ^. vboName) 0 4 8 0
|
||||
glVertexArrayVertexBuffer shPosVAOname 0 (shVBO ^. vboName) 0 (fromIntegral $ floatSize * 8)
|
||||
setupVertexAttribPointer shPosVAOname 0 4 0
|
||||
--bindBuffer ElementArrayBuffer $= Just shEBOname
|
||||
glVertexArrayElementBuffer shPosVAOname shEBOname
|
||||
let --shPosColVAO = VAO
|
||||
@@ -108,7 +112,8 @@ preloadRender = do
|
||||
--bindVertexArrayObject $= Just shEdgeVAOname
|
||||
shEdgeVAOname <- mglCreate glCreateVertexArrays
|
||||
glBindVertexArray shEdgeVAOname
|
||||
setupVertexAttribPointer shEdgeVAOname (shVBO ^. vboName) 0 4 8 0
|
||||
glVertexArrayVertexBuffer shEdgeVAOname 0 (shVBO ^. vboName) 0 (fromIntegral $ floatSize * 8)
|
||||
setupVertexAttribPointer shEdgeVAOname 0 4 0
|
||||
--setup ebo for silhouette edges
|
||||
silEBOname <- mglCreate glCreateBuffers
|
||||
silEBOptr <- mallocArray numDrawableElements
|
||||
@@ -150,7 +155,7 @@ preloadRender = do
|
||||
positionalBlankShad <- makeShader "positional/blank" [vert, frag] [3] ETriangles
|
||||
-- 2D draw shaders
|
||||
bslist <- makeShader "dualTwoD/basic" [vert, frag] [3, 4] ETriangles
|
||||
bslista <- makeShader' "shape/basic" [vert, frag] [4, 4] ETriangles shVBO
|
||||
bslista <- makeShader4 "shape/basic" [vert, frag] [4, 4] ETriangles shVBO
|
||||
glVertexArrayElementBuffer (bslista ^. shadVAO . vaoName) shEBOname
|
||||
aslist <- makeShader "dualTwoD/arc" [vert, frag] [3, 4, 3] ETriangles
|
||||
eslist <- makeShader "dualTwoD/ellipse" [vert, geom, frag] [3, 4] ETriangles
|
||||
|
||||
Reference in New Issue
Block a user