Release 2.8.0 - revamped animation engine


This release doesn't introduce new features, but enhances existing ones.

New animation engine

Prior to this release, animation engine was a globally slotted one, in the same way as sprites or layers. Each animation of any kind required a slot that had to be managed. That was tricky with tileset animations, where slots had to be allocated beforehand without having knowledge of how many slots was going to need. This was cumbersome to say the least.

No more.

Sprite and tileset animations are self sustained: they don't use slots anymore, using them is straightforward:

* Tileset animations are started automatically when setting up a layer that has animated tileset
* Sprite animation just require the index of sprite to animate.
* Tilemap animations were a legacy feature don't used anywhere, removed
* Slotted animations are now only used by palette animations (color cycles).

This of course has some minor breaking API changes to the animation system:

* Removed `TLN_SetTilesetAnimation()` and `TLN_SetTilemapAnimation()`.
* Removed parameter "index" from `TLN_SetSpriteAnimation()`, requires only sprite number.
* Replaces `TLN_DisableAnimation()` with `TLN_DisablePaletteAnimation()` and `TLN_DisableSpriteAnimation()`

Improved sequence support

Now it's possible to have a tileset animation where one of the frames can be the same as the tile being animated, it's usual to do this way by map creators. You can now do this:

47 <- [47, 49, 50, 53]

In this example, tile 47 is both the tile being animated, and one of the frames of the animation.

Enhanced asset packer support

Previous version of asset packager format had a flaw where improbable -but possible- hash collisions weren't handled properly. That could lead to loading a different asset than intended. ResourcePacker has been updated without this flaw, and its loader is now integrated in this release. I also allows unlimited password length. Upgraded packer can be downloaded at itch.io: https://megamarc.itch.io/resourcepacker

Enhanced .tmx loader

It now supports up to 64 layers per .tmx file, and tilesets are cached. If multiple layers use the same tileset, only one copy of the tileset is loaded and animated, shared between all the tilemaps using it.

Updated examples

All examples are updated to be compliant with the new API changes. In addition "forest" sample now accepts optional command-line parameters to load assets from password-encrypted asset pack.

Files

Windows 32-bit 460 kB
May 03, 2020
Windows 64-bit 479 kB
May 03, 2020
windows_libs.zip 712 kB
May 01, 2020
Linux ARMv7l (Raspberry Pi, BeagleBone...) 372 kB
May 03, 2020
Linux Desktop 32-bit 390 kB
May 03, 2020
Linux Desktop 64-bit 382 kB
May 03, 2020

Get Tilengine

Buy Now$5.00 USD or more

Leave a comment

Log in with itch.io to leave a comment.