Continue shader refactor
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
module Shader.Compile (
|
||||
setupVBO,
|
||||
setupVBO',
|
||||
setupVBOStatic,
|
||||
makeShaderEBO,
|
||||
makeShaderVBO,
|
||||
@@ -89,17 +89,17 @@ makeShaderUsingVBO s shaderlist sizes pm vbo = do
|
||||
vao <- setupVAOUsingVBO sizes vbo
|
||||
makeShaderUsingVAO s shaderlist pm vao
|
||||
|
||||
setupVBO :: Int -> IO VBO
|
||||
setupVBO vertexsize = do
|
||||
setupVBO' :: Int -> IO VBO
|
||||
setupVBO' vertexsize = do
|
||||
vboname <- mglCreate glCreateBuffers
|
||||
thePtr <- mallocArray (vertexsize * numDrawableElements)
|
||||
thePtr <- mallocBytes (vertexsize * numDrawableElements)
|
||||
-- Allocate space
|
||||
glNamedBufferData
|
||||
vboname
|
||||
(fromIntegral $ floatSize * numDrawableElements * vertexsize)
|
||||
(fromIntegral $ numDrawableElements * vertexsize)
|
||||
nullPtr
|
||||
GL_STREAM_DRAW
|
||||
return VBO{_vboName = vboname, _vboPtr = thePtr, _vboVertexBytes = floatSize * vertexsize}
|
||||
return VBO{_vboName = vboname, _vboPtr = thePtr, _vboVertexBytes = vertexsize}
|
||||
|
||||
-- the input ptr is assumed to contain the correct amount of data according to
|
||||
-- the specified number and type of vertices
|
||||
@@ -249,7 +249,7 @@ setupVBOVAO :: [Int] -> IO (VAO, VBO)
|
||||
setupVBOVAO sizes = do
|
||||
vaoname <- mglCreate glCreateVertexArrays
|
||||
glBindVertexArray vaoname
|
||||
vbo <- setupVBO (sum sizes)
|
||||
vbo <- setupVBO' (floatSize * sum sizes)
|
||||
--vao <- setupVAOvbo (toFloatVAs sizes) (sum sizes) (vbo ^. vboName)
|
||||
vao <- setupVAOUsingVBO (toFloatVAs sizes) vbo
|
||||
return (vao,vbo)
|
||||
|
||||
Reference in New Issue
Block a user