Code Monkey home page Code Monkey logo

acas-tech-demo's Introduction

Advanced Character Animation System

In Development

ACAS is a set of engine-agnostic libraries and utilities to help accelerate more complex animation and manipulation of 2D Sprites

In the future, an SDL2 based example will be included in the examples showing off ACAS's capabilities

Components of ACAS:

๐Ÿงต ACAS Stitch:

Being Polished

Cargo Feature Name: acas-stitch

Provides Powerful image manipulation utilites tailored specifically to pixel art.

  • Rotation Algorithm similar to the famous rotsprite algorithm by XenoWhirl
  • Stitching Capabilities: Imagine you had 5 weapons and 5 charachters and wanted every charachter to be able to use every weapon. But each charachters attack animations require these weapons to be drawn at different positions and angles, are you really going to make 25 sets of sprites for every charachter-weapon combination? With ACAS you need only draw 1 set of base sprites per charachter and 1 sprite per weapon, And with some metadata ACAS will stitch those two together with relatively good quality, thus generating your 25 sets of sprites out of just 5, All in a few milliseconds. Plus this reduces the size of your asset bundle
  • There is also the super-fast version of rotation that is suited for when you need to rotating pixel art every frame while needing to be very low latency, a little noisy but can be useful for certain applications
Example

Example Image

โš™๏ธ ACAS Core:

Yet to Begin

Cargo Feature Name: acas-core

Bread and Butter of ACAS Library for handling animation states at runtime, Keeps track of what frame to display Additional data can tied to frames and ACAS will keep track of these attributes for you e.g iFrames for combat games, whether the current animation locks the players ability to move like in Ultimate Move Animations, and any other custom flag you like.

Custom Events can also be tied to frames which will be processed by polling the Event Pump/ attaching Event Handlers. This can be used to for example, tie sfx to be in sync with your animations or simplify implmenting stat counters like "Number of Attacks used"

๐Ÿ“ ACAS Compose:

Yet to Begin

Cargo Feature Name: acas-compose

CLI Tool that compiles your sprites and their metadata (like custom events for acas-core) from a human readable format toml into a single file that can be quickly parsed at runtime to further reduce load times and also cuts down on your bundle size.

Alternatively you can use cargo build scripts to achieve the same thing programmatically using functions included in the acas library by default

acas-tech-demo's People

Contributors

shivenbajpai avatar

Stargazers

 avatar Devansh avatar

Watchers

Devansh avatar  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.