some very basic animations for switching panes

akkartik
Nov 20, 2023, 2:43 AM
4GX6NAY4OD4RXA3UJKI3LLPU43ADGF3TDV2DHPNMSLXJPPXCXKOQC

Dependencies

  • [2] I52S4E5F running `print` now appends to output editor
  • [3] 2Q437U4F starting to experiment with animated pane transitions
  • [4] WR2WMEPE implement 'Run' button
  • [5] VAVXKWZV aggregate global state inside a 'pane' object
  • [*] R5QXEHUI somebody stop me

Change contents

  • file addition: 0060-draw_previous_canvas (----------)
    [7.2]
    draw_previous_canvas = function(canvas, x)
    if canvas == nil then return end
    love.graphics.setBlendMode('replace', 'premultiplied')
    love.graphics.setColor(1,1,1,1)
    love.graphics.draw(canvas, x,0)
    love.graphics.setBlendMode('alpha')
    end
  • edit in 0059-slide_canvas at line 2
    [3.43]
    [3.43]
    local speed = 20 -- px/frame
  • replacement in 0059-slide_canvas at line 6
    [3.101][3.101:212]()
    for i=1,40 do
    print(Current_time, i)
    love.graphics.rectangle('fill', i*10,0, 30, App.screen.height)
    [3.101]
    [3.212]
    for x=0,App.screen.width,speed do
    draw_previous_canvas(Panes[pane_index].canvas, x)
  • replacement in 0059-slide_canvas at line 11
    [3.263][3.263:352]()
    for i=20,1,-1 do
    print(i)
    love.graphics.line(i*50,0, i*50, App.screen.height)
    [3.263]
    [3.352]
    for x=0,-App.screen.width,-speed do
    draw_previous_canvas(Panes[pane_index].canvas, x)
  • edit in 0051-run_button at line 14
    [2.591]
    [2.591]
    love.graphics.setBlendMode('replace')
  • edit in 0051-run_button at line 16
    [2.634]
    [2.634]
    love.graphics.setColor(1,1,1)
    love.graphics.rectangle('fill', 0,0, App.screen.width, App.screen.height)
  • replacement in 0042-draw_canvas at line 3
    [4.234][4.264:318](),[4.264][4.264:318]()
    love.graphics.setBlendMode('alpha', 'premultiplied')
    [4.234]
    [4.318]
    love.graphics.setBlendMode('replace')
    -- love.graphics.setBlendMode('alpha', 'premultiplied')