CreateJS / TweenJS, анимируйте несколько свойств с разными функциями в одном Tween

Я хотел бы анимировать свойства объекта с разными эффектами, но в одном Tween (проблема с производительностью), возможно ли это?

Допустим, у меня есть объект {x: 0, y: 0}, и я хочу анимировать его до {x: 100, y: 100}. Я начал с:

createjs.Tween.get(myObject)
    .to({x: 100, y:100}, 1000, function (v) { 
        return v; 
    });

Это анимирует все свойства линейно, я бы хотел сделать что-то вроде этого:

createjs.Tween.get(myObject)
    .to({x: 100, y:100}, 1000, function (v) { 
        if( animatingX ) return v;
        else return v*v;
    });

Мое текущее решение - анимировать каждое свойство с другой анимацией:

createjs.Tween.get(myObject)
    .to({x: 100}, 1000, function (v) { 
        return v;
    });
createjs.Tween.get(myObject)
    .to({y:100}, 1000, function (v) { 
        return v*v;
    });

но при наличии сотен объектов загрузка моего процессора чрезмерна.

Любая идея?


person Zoff    schedule 27.01.2015    source источник


Ответы (1)


Я не думаю, что использование сотен объектов tweenJs является чрезмерным. Я использую три анимации, как и вы, на моем растровом изображении частиц, и я могу обновлять 50-60 частиц одновременно. В результате мой процессор не перегружается, на самом деле, я пробовал на XperiaZ2, iPhone5 и Samsung Galaxy S4, и все прошло достаточно гладко.

На мой взгляд, с этой техникой можно работать и дальше, не боясь эффективности.

person David Peicho    schedule 10.07.2015