pixi-tween is a tween plugin for Pixi.js v4.1.0 or higher
npm install k8w-pixi-tweenpixi-tween
======================
pixi-tween is a plugin for Pixi.js v4.1.0 or higher to create tween animations.
``js
import * as PIXI from ('pixi.js');
import tweenManager from ('pixi-tween');
const app = new PIXI.Application(800, 600);
document.body.appendChild(app.view);
// Listen for animate update and update the tween manager
app.ticker.add(function(delta) {
PIXI.tweenManager.update();
});
`
`js
const app = new PIXI.Application(800, 600);
document.body.appendChild(app.view);
// Listen for animate update and update the tween manager
app.ticker.add(function(delta) {
PIXI.tweenManager.update();
});
`
to the PIXI namespace, and this new namespace has 3 new classes Tween, TweenPath and TweenManager, also add an Easing object.A tweenManager is automatically created for you in PIXI.tweenManager, which you need to update on ticks via
PIXI.tweenManager.update().
You can create your own tweenManagers via new PIXI.tween.TweenManager, and you can also manually update the timings of a manager via PIXI.tweenManager.update(deltaMS)When a tween is ended, the instance will kept in the memory and in the tweenManager, but you can prevent this if you set .expire = true in the tween.
$3
Tween extends from PIXI.utils.EventEmitter, and emit some events: start, end, repeat, update, stop and pingpong. You can read about these in the api documentation under PIXI.tween.Tween.$3
Move an object along a path it's easy with TweenPath. TweenPath use a similar PIXI.Graphics API to create paths, and once it's created our path we just need to add it to a tween with .path = ourPathCreated.If you need draw your path (useful to debug), PIXI.Graphics has been enhanced with a new method named .drawPath(path). Use it the same way like .drawRectanle, .drawShape, etc...
Basic example
`js
const app = new PIXI.Application(800, 600);
document.body.appendChild(app.view);const sprite = new PIXI.Sprite(PIXI.Texture.WHITE);
const tween = PIXI.tweenManager.createTween(sprite);
tween.from({ x: 0 }).to({ x: 250 })
tween.time = 1000;
tween.repeat = 10;
tween.on('start', () => { console.log('tween started') });
tween.on('repeat', ( loopCount ) => { console.log('loopCount: ' + loopCount) });
tween.start();
// Listen for animate update and update the tween manager
app.ticker.add(function(delta) {
PIXI.tweenManager.update();
});
``