Git Product home page Git Product logo

easesprite's Introduction

EaseSprite

An Aseprite extension

current release: v1.0.0

Latest Changes

  • Initial release

This Aseprite extension allows you to apply "easing" functions to the timing of animation frames

Example

The sprite below consists of 24 frames, and the position of the red ball is moved up by 1px each frame

Important

This extension won't animate your sprites for you, it just applies easing to the duration of each frame

Linear Easing (a.k.a no easing ๐Ÿ˜‰)

Ease In Quad

Requirements

This extension has been tested on both Windows and Mac OS (specifically, Windows 11 and Mac OS Sonoma 14.4.1)

It is intended to run on Aseprite version 1.3 or later and requires API version 1.3-rc5 (as long as you have the latest version of Aseprite, you should be fine!)

Features & Usage

Navigate to Frame > Easing, select the desired easing function, the desired total duration (in milliseconds), and the frames to which easing should be applied.

You can apply the easing function to all frames in the sprite, the currently selected range of frames, a range of frames by their indices, or by an existing tag.

The Tag selection option will be disabled if the active sprite has no tags.

The duration of each frame in the selection will be adjusted accordingly such that the chosen easing function will play out over the given total duration.

The following easing functions are supported:

  • "Ease In Circ"
  • "Ease Out Circ"
  • "Ease In Out Circ"
  • "Ease In Cubic"
  • "Ease Out Cubic"
  • "Ease In Out Cubic"
  • "Ease In Expo"
  • "Ease Out Expo"
  • "Ease In Out Expo"
  • "Ease In Quad"
  • "Ease Out Quad"
  • "Ease In Out Quad"
  • "Ease In Quart"
  • "Ease Out Quart"
  • "Ease In Out Quart"
  • "Ease In Quint"
  • "Ease Out Quint"
  • "Ease In Out Quint"
  • "Ease In Sine"
  • "Ease Out Sine"
  • "Ease In Out Sine"
  • "Linear" (effectively no easing; this is functionally identical to selecting Frame > Constant Frame Rate)

Note

You can learn more about these easing functions at easings.net

When the Add Easing Tag option is checked (default) the selected frames will be tagged with the name of the chosen easing function like so:

Limitations

The active sprite must have at least two (2) frames in order for an easing function to be applied; sprites with more frames will result in smoother easing

You must select at least two (2) framse when selecting a range of frames

The shortest possible duration for a single frame is 1 millisecond

The longest possible duration for a single frame is 65,535 milliseconds (just over 65 seconds)

Individual frame times are rounded up to the nearest millisecond, which means the animation will complete in approximately the specified number of millseconds, but maybe not exactly

This means that the longest possible animation duration is 65535 * n where n is the number of frames in the animation and no easing (i.e. "Linear" easing) is applied

Installation

You can download this extension from itch.io as a "pay what you want" tool

If you find this extension useful, please consider donating via itch.io to support further development! โ™ฅ

easesprite's People

Contributors

jriggles avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.