diff options
Diffstat (limited to 'shader/main.lua')
-rw-r--r-- | shader/main.lua | 24 |
1 files changed, 16 insertions, 8 deletions
diff --git a/shader/main.lua b/shader/main.lua index 4629d5b..39679b8 100644 --- a/shader/main.lua +++ b/shader/main.lua @@ -2,17 +2,22 @@ io.stdout:setvbuf("no") local shader local img local img2 +local canvas +local sw, sh = jin.graphics.getSize() function jin.core.onLoad() local str = jin.filesystem.read("metaball.shader") shader = jin.graphics.newShader(str) local bitmap = jin.graphics.newBitmap("img.png") + local blackImg = jin.graphics.newBitmap(20, 20) -- local bitmap2 = jin.graphics.newBitmap("img2.bmp") - img = jin.graphics.newTexture(bitmap) + img = jin.graphics.newTexture(blackImg) -- img2 = jin.graphics.newTexture(bitmap2) + canvas = jin.graphics.newCanvas(200, 200) end - +-- extern vec3 iResolution; +-- extern number iGlobalTime; +-- extern vec4 iMouse; local mx, my = 0, 0 -local sw, sh = jin.graphics.getSize() function jin.core.onEvent(e) if e.type == "Quit" then jin.core.stop() @@ -32,11 +37,14 @@ end local dt = 0 function jin.core.onDraw() - -- dt = dt + 0.1 + dt = dt + 0.1 + jin.graphics.bindCanvas(canvas) jin.graphics.useShader(shader) - shader:sendNumber("feather", 1 ) - shader:sendVec2("scaleFactor", 1, 1) - shader:sendVec2("distortionFactor", 1, 1) - jin.graphics.draw(img, mx, my, 1, 1) + shader:sendNumber("iGlobalTime", dt ) + shader:sendVec3("iResolution", sw, sh, 1) + shader:sendVec4("iMouse", mx, my, mx, my) + jin.graphics.draw(img, 0, 0, 1, 1) jin.graphics.unuseShader() + jin.graphics.unbindCanvas() + jin.graphics.draw(canvas, 0, 0, 5, 5) end
\ No newline at end of file |