io.stdout:setvbuf("no") local shader local text local page local tf local sprites local ttf function jin.core.onLoad() shader = jin.graphics.newShaderf("font.shader") -- local bitmap = jin.graphics.newBitmap("defaultfont.png") -- local tfdata = jin.graphics.newTTFData("font.ttf") -- tf = tfdata:newTTF(13) -- page = tf:typeset("this is a test") jin.graphics.setClearColor(100, 100, 100, 255) sprites = jin.graphics.newTexture("sprites.png") -- local ttfdata = jin.graphics.newTTFData("font_pixel.ttf") -- ttf = ttfdata:newTTF(22); local bitmap = jin.graphics.newBitmap("font2.png") tf = jin.graphics.newTextureFont(bitmap, [[<=>?.'^@abcdefghijklmnopqrstuvwxyz|~[\]_]], {255, 0, 0, 255}, 16) end local value = 0 function jin.core.onEvent(e) if e.type == "Quit" then jin.core.stop() end if e.type == "KeyDown" then if e.key == "Up" then value = value + 0.01 end if e.key == "Down" then value = value - 0.01 end end end local t = 0 local fps = 0 local f = 0 function jin.core.onUpdate(dt) t = t + dt f = f + 1 if t > 1 then fps = f f = 0 t = t - 1 end end function run() ---#if editor ---#endif end function jin.core.onDraw() jin.graphics.setColor(255, 255, 255) --jin.graphics.draw(sprites, 10, 10, 1, 1) -- jin.graphics.setFont(tf) jin.graphics.useShader(shader) shader:sendNumber("dt", t) jin.graphics.print(value) jin.graphics.print([[ #VERTEX_SHADER Vertex vert(Vertex v) { return v; } #END_VERTEX_SHADER #FRAGMENT_SHADER uniform float dt; Color frag(Color col, Texture tex, Vertex v) { Color c = texel(tex, v.uv); if(c.a < 0.9f) { c.a /= 1.34; } return c; } //1.21 1.34 //stbi_write_png #END_FRAGMENT_SHADER ]], 0, 20) jin.graphics.unuseShader() jin.graphics.print([[ #VERTEX_SHADER Vertex vert(Vertex v) { return v; } #END_VERTEX_SHADER #FRAGMENT_SHADER uniform float dt; Color frag(Color col, Texture tex, Vertex v) { Color c = texel(tex, v.uv); if(c.a < 0.9f) { c.a /= 1.34; } return c; } //1.21 1.34 //stbi_write_png #END_FRAGMENT_SHADER ]], 300, 20) end