From c740e5d7512cdccfd5fc20ff271d0e3132da4088 Mon Sep 17 00:00:00 2001 From: Humza Shahid Date: Wed, 14 Aug 2024 01:43:53 +0100 Subject: [PATCH] delete shaders after linking them in program, which reduces memory by like 0.1 MB (very minor) --- dotscape | Bin 908256 -> 908256 bytes imperative-shell/app-draw.sml | 33 ++++++++++++--------------------- 2 files changed, 12 insertions(+), 21 deletions(-) diff --git a/dotscape b/dotscape index df370f4317700fdeb514dacc97d25335fd409af4..b541929f1c1b755e60b0e337f022e57d1f449c61 100755 GIT binary patch delta 8323 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 Qz4t%7tXfp%$E<4lFNX6RjsO4v delta 8357 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 a+xV7@_|90 0 then let - val {vertexBuffer, program, ...} = buttonDrawObject + val {vertexBuffer, program} = buttonDrawObject val _ = Gles3.bindBuffer vertexBuffer val _ = Gles3.vertexAttribPointer (0, 2, 5, 0) val _ = Gles3.enableVertexAttribArray 0 @@ -118,7 +109,7 @@ struct let val triangleDrawObject = initDrawObject (Constants.graphVertexShaderString, Constants.graphFragmentShaderString) - val {vertexBuffer, program, ...} = triangleDrawObject + val {vertexBuffer, program} = triangleDrawObject val _ = Gles3.bindBuffer vertexBuffer val _ = Gles3.bufferData (#[], 0, Gles3.STATIC_DRAW ()) @@ -140,7 +131,7 @@ struct fun drawTriangles (triangleDrawObject: draw_object, triangleDrawLength) = if triangleDrawLength > 0 then let - val {vertexBuffer, program, ...} = triangleDrawObject + val {vertexBuffer, program} = triangleDrawObject val _ = Gles3.bindBuffer vertexBuffer val _ = Gles3.vertexAttribPointer (0, 2, 2, 0) val _ = Gles3.enableVertexAttribArray 0