Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/melonjs/spine-plugin
melonJS official Spine plugin
https://github.com/melonjs/spine-plugin
gamedev melonjs plugin spine spine-animation spine-runtimes
Last synced: 30 days ago
JSON representation
melonJS official Spine plugin
- Host: GitHub
- URL: https://github.com/melonjs/spine-plugin
- Owner: melonjs
- License: mit
- Created: 2023-03-19T07:57:59.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2023-09-23T07:13:08.000Z (about 1 year ago)
- Last Synced: 2024-11-16T09:19:45.035Z (about 1 month ago)
- Topics: gamedev, melonjs, plugin, spine, spine-animation, spine-runtimes
- Language: JavaScript
- Homepage:
- Size: 3.67 MB
- Stars: 1
- Watchers: 3
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# melonJS Spine Plugin
a [Spine](http://en.esotericsoftware.com/spine-in-depth) 4.x plugin implementation for [melonJS 2](http://www.melonjs.org)
![melonjs-spine-gif](https://github.com/melonjs/spine-plugin/assets/4033090/dc259c8e-def6-419e-83a9-cda374715686)
>Note: although functional, this plugin is still a work in progress. Feedback and especially contributions are welcome!
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://github.com/melonjs/es6-boilerplate/blob/master/LICENSE)
[![NPM Package](https://img.shields.io/npm/v/@melonjs/spine-plugin)](https://www.npmjs.com/package/@melonjs/spine-plugin)
[![jsDeliver](https://data.jsdelivr.com/v1/package/npm/@melonjs/spine-plugin/badge?style=rounded)](https://www.jsdelivr.com/package/npm/@melonjs/spine-plugin)## Installation
-------------------------------------------------------------------------------
this plugin is already bundled with the required Spine [4.x runtime](package.json#dependencies), so there is no need to install it separately.
>Note: this plugin requires melonJS version 15.12 or higher.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);}
```
>Note: use "spine" as a value for the `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)for more details, see a complete usage example in the [test](test) folder
## Compatibility
-------------------------------------------------------------------------------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).
## Questions, need help ?
-------------------------------------------------------------------------------
If you need technical support, you can contact us through the following channels :
* Forums: with melonJS 2 we moved to a new discourse [forum](https://melonjs.discourse.group), but we can still also find the previous one [here](http://www.html5gamedevs.com/forum/32-melonjs/)
* Chat: come and chat with us on [discord](https://discord.gg/aur7JMk), or [gitter](https://gitter.im/melonjs/public)
* we tried to keep our [wikipage](https://github.com/melonjs/melonJS/wiki) up-to-date with useful links, tutorials, and anything related melonJS.