Skip to content

CubOfJudahsLion/Swirl

Repository files navigation

SWIRL

Synopsis

The Simple WebAssembly Interaction and Rendering Library is a 2D game framework that builds on the media capabilities of modern browsers.

Brief History

Swirl was created for (and is copyright of) MultiSLOT LLC. Notably, it was written in the space of over a year; similar developments often require small teams a year of two to reach equivalent functionality.

Highlights

Swirl is written mostly in Rust, along with some necessary polyglot glue. It compiles to WebAssembly as one of its main objectives was superior performance. In most demos, it did use from 10 to 25 times less CPU than competing JavaScript libraries.

For rendering, the library taps into the capabilities of the HTMLCanvasElement.

Aside from Scene Graph capabilities, Swirl provides media loaders, sound playback, drawing primitives such as sprites, text, buttons (all with corresponding Affine Transformations over homogeneous coordinates), multi-image movies, RGBA/HSLA/named color models and automatic constrained layouts.

Status

Development has now stopped without foreseeable continuation.

Basic functionality in Swirl is fully implemented and extensively tested, though it was also meant to incorporate Spine animations. Initial efforts for an asset compiler (to be written in Haskell) can be found in the codebase.

Purpose of this repository

It exists solely as a code showcase. This is a proprietary product.

About

A Rust+WebAssembly 2D Game Engine

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published