Более новая версия EaselJS ломает анимацию

0

У меня есть работающая анимация с использованием BitmapAnimation, но с более новой версией 0.7.0 этот класс был заменен классом Sprite и теперь развращен, я обновляю свой код до нового класса, но, похоже, проблемы с моими анимациями,

В старой версии анимация воспроизводит любую анимацию, которую я прошу просто, используя, например:

playerAnimation[i].gotoAndPlay("idle");

Но теперь им кажется, что они заикаются. Как будто повторяющиеся рамки смехотворно быстро или прыгают назад в кадр на каждом тике.

Я думаю, что это может иметь какое-то отношение к обновленному тикеру в этой версии. Единственными изменениями в моем коде являются следующие:

Before (BitmapAnimation и старый Tick):

...
playerAnimation[i] = new createjs.BitmapAnimation(spriteSheet[i]);
...
createjs.Ticker.addListener(tick);
createjs.Ticker.useRAF = true;
createjs.Ticker.setFPS(60);
...
function tick() {
...
}

После изменений (BitmapAnimation заменена на Sprite и функция Tick изменена на новую версию):

...
function handleEvent(event) {
    if (event.type == "tick") {
        this.tick(event);
    }
}
...
playerAnimation[i] = new createjs.Sprite(spriteSheet[i]);
...
createjs.Ticker.addEventListener('tick', tick);
createjs.Ticker.useRAF = true;
createjs.Ticker.setFPS(60);
...
function tick(event){
...
}

Это буквально единственные изменения, которые были внесены в код. Я даже скопировал и вставил весь другой код, за исключением необходимых изменений, в новый файл, если бы я сделал какие-либо непреднамеренные изменения.

Я знаю, что класс Sprite добавил некоторые новые методы, поэтому я подумал, не поиграли ли они старым способом.

Есть идеи? Вам нужен еще один код?

Заранее спасибо!

Теги:
animation
createjs
easeljs

1 ответ

1
Лучший ответ

Выяснил проблему!

С новым обновлением EaselJs они заменили атрибут "частота" SpiteSheet на атрибут "скорость". Поэтому, прежде чем я использовал "4" как свою "частоту"; который запускал анимацию в 4 раза медленнее, теперь под "скоростью", она запускает анимацию в 4 раза быстрее!

В любом случае спасибо парням :)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню