All Projects → tavuntu → Katsudo

tavuntu / Katsudo

Licence: mit
Katsudö is an animation library for LÖVE

Programming Languages

lua
6591 projects

Projects that are alternatives of or similar to Katsudo

Love
LÖVE is an awesome 2D game framework for Lua.
Stars: ✭ 1,305 (+3978.13%)
Mutual labels:  gamedev, love2d
Love2d arkanoid tutorial
Tutorial on making a full-featured arkanoid (breakout)-type game with LÖVE framework.
Stars: ✭ 137 (+328.13%)
Mutual labels:  gamedev, love2d
Bytepath
A replayable arcade shooter with a focus on build theorycrafting made using Lua and LÖVE.
Stars: ✭ 1,119 (+3396.88%)
Mutual labels:  gamedev, love2d
Walt
An animation library for LÖVE.
Stars: ✭ 53 (+65.63%)
Mutual labels:  love2d, animation-library
superfeather
SNES game engine in 65816 assembly, focusing on performance, flexibility, convenience
Stars: ✭ 31 (-3.12%)
Mutual labels:  gamedev, love2d
Gooi
LÖVE GUI Library
Stars: ✭ 168 (+425%)
Mutual labels:  gamedev, love2d
Sock.lua
A Lua networking library for LÖVE games.
Stars: ✭ 121 (+278.13%)
Mutual labels:  gamedev, love2d
Blog
gamedev blog
Stars: ✭ 3,076 (+9512.5%)
Mutual labels:  gamedev, love2d
awesome-playdate
A list of awesome resources for Playdate (https://play.date) game development and the Playdate SDK (https://play.date/dev/)
Stars: ✭ 149 (+365.63%)
Mutual labels:  gamedev, love2d
susse
super ültra sweet sprite editor
Stars: ✭ 22 (-31.25%)
Mutual labels:  gamedev, love2d
animX
An animation library for Love2D with unique features
Stars: ✭ 17 (-46.87%)
Mutual labels:  love2d, animation-library
Grid Sdk
The Grid SDK - Game engine for Lua
Stars: ✭ 612 (+1812.5%)
Mutual labels:  gamedev, love2d
Html5gametutorial
HTML5 game tutorial made for HTML.IT
Stars: ✭ 7 (-78.12%)
Mutual labels:  gamedev
Blit
👾 Blitting library for 2D sprites
Stars: ✭ 15 (-53.12%)
Mutual labels:  gamedev
Voxelengine unity
Voxel engine made in C# for Unity
Stars: ✭ 25 (-21.87%)
Mutual labels:  gamedev
Swipemenuviewcontroller
Swipable tab and menu View and ViewController.
Stars: ✭ 926 (+2793.75%)
Mutual labels:  animation-library
Imgui
Dear ImGui: Bloat-free Graphical User interface for C++ with minimal dependencies
Stars: ✭ 33,574 (+104818.75%)
Mutual labels:  gamedev
Bingehack4
A replacement for bingehack. For information about in-game features and changes:
Stars: ✭ 14 (-56.25%)
Mutual labels:  gamedev
Ik
love2d character animation editor
Stars: ✭ 23 (-28.12%)
Mutual labels:  love2d
Zelduh
A tile based adventure game!
Stars: ✭ 22 (-31.25%)
Mutual labels:  gamedev

Katsudö is a small and simple animation library for LÖVE

License Version

Example 1:

local k = require "katsudo"

function love.load()
    gr = love.graphics
    gr.setBackgroundColor(1, 1, 1)
    local imgDir = "imgs/tc.png"
    -- 18 frames of 30x55 at 25 FPS:
    tc  = k.new(imgDir, 30, 55, 18, 0.04)
    tc2 = k.new(imgDir, 30, 55, 18, 0.04, "rough")
    tc3 = k.new(imgDir, 30, 55, 18, 0.04):rewind()
    tc4 = k.new(imgDir, 30, 55, 18, 0.04):once()
end

function love.update(dt)
    k.update(dt)
end

function love.draw()
    tc:draw (50,  50, 0, 5, 5)
    tc2:draw(200, 50, 0, 5, 5)
    tc3:draw(350, 50, 0, 5, 5)
    tc4:draw(500, 50, 0, 5, 5)
end

Result:

test2.gif

Example 2, setDelay():

local k = require "katsudo"

function love.load()
    gr = love.graphics
    gr.setBackgroundColor(1, 1, 1)
    imgDir = "imgs/tc.png"
    tc  =  k.new(imgDir, 30, 55, 18, .1):setDelay(0.5) -- change to half second for all frames
    tc2  = k.new(imgDir, 30, 55, 18, .1):setDelay(0.5, 2) -- half second just for 2nd frame
    tc3  = k.new(imgDir, 30, 55, 18, .1):setDelay(0.5, 2, true) -- starting with 2nd frame
end

function love.update(dt)
    k.update(dt)
end

function love.draw()
    tc:draw (50,  50, 0, 5, 5)
    tc2:draw(200, 50, 0, 5, 5)
    tc3:draw(350, 50, 0, 5, 5)
end

Result:

test3.gif

Example 3, rotation:

local k = require "katsudo"

function love.load()
  gr = love.graphics
  gr.setBackgroundColor(1, 1, 1)
  rotatingDounts = {}
  -- spin clockwise at 60 RPM (a spin in 1 sec):
  table.insert(rotatingDounts, k.rotate('imgs/donut.png'))
  -- 30 RPM:
  table.insert(rotatingDounts, k.rotate('imgs/donut.png', .5))
  -- 30 RPM counter clockwise:
  table.insert(rotatingDounts, k.rotate('imgs/donut.png', .5, true))
  -- 30 RPM spinning in a random direction:
  table.insert(rotatingDounts, k.rotate('imgs/donut.png', .5, 'random'))
end

function love.update(dt)
  k.update(dt)
end

function love.draw()
  for i = 1, #rotatingDounts do
    local donut = rotatingDounts[i]
    donut:draw(
      i * donut.w,
      200,
      donut:r(),
      1,
      1,
      donut.w / 2,
      donut.h / 2)
  end
end

Result:

test.gif

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].