melonJS Spine plugin
npm install @melonjs/spine-plugina Spine 4.x plugin implementation for melonJS 2
>Note: although functional, this plugin is still a work in progress. Feedback and especially contributions are welcome!



To install the plugin using npm :
$ [sudo] npm install @melonjs/spine-plugin
Then import and use the plugin in your project. For example:
``JavaScript
import { SpinePlugin } from '@melonjs/spine-plugin';
import * as me from 'melonjs';
// register the plugin
me.plugin.register(SpinePlugin);
// prepare/declare assets for the preloader
const DataManifest = [
{
"name": "alien-ess.json",
"type": "spine",
"src": "data/spine/alien-ess.json"
},
{
"name": "alien.atlas",
"type": "spine",
"src": "data/spine/alien.atlas"
},
];
// import default Spine class
import Spine from '@melonjs/spine-plugin';
// preload assets
me.loader.preload(DataManifest, async function() {
// create a new Spine Renderable
let spineAlien = new Spine(100, 100, {atlasFile: "alien.atlas", jsonFile: "alien-ess.json"});
// set default animation
spineAlien.setAnimation(0, "death", true);
// add it to the game world
me.game.world.addChild(spineAlien);
}
`type` property to indicate which assets and are actual Spine assets and to be loaded using the plugin (requires version 1.4.0 or higher of the Spine plugin)
>Note: use "spine" as a value for the
for more details, see a complete usage example in the test folder
below is the compatibility version matrix :
| melonJS | @melonjs/spine-plugin | spine-runtime |
|---|---|---|
| v15.12.x (or higher) | v1.x | v4.1, v4.2-beta |
>Note: the current version of the spine-plugin is bundled with the 4.2.x beta version of the Spine runtime, which is for now backward compatible with the Spine 4.1 runtime (from a player/rendering point of view).