Как да създадете анимация с помощта на Cocos2d в java?

Започнах само Cocos2d. Може ли някой да обясни, моля, как да създадете анимация с няколко кадъра, където всички рамки са различни изображения или как да използвате и създавате върху изображение и *.plist файл?


person B.S.    schedule 15.01.2012    source източник


Отговори (2)


трябва да създадете обект на CCAnimation, да добавите всички рамки на изображението в него, след това да създадете обект на CCAnimate и да добавите обекта CCAnimation в него. след това използвайте обекта CCAnimate в runAction на вашия основен обект.

person JOA80    schedule 16.01.2012
comment
Проблемът е, че не мога да намеря никакъв пример, който да използвам, за да създам собствена анимация. Какъв софтуер помага за създаване на png изображение със спрайтове и plist файл - person B.S.; 16.01.2012
comment
можете да проверите следната връзка. raywenderlich.com/1271/. той е в obj-c, но няма да е трудно да се пренесе в java. - person JOA80; 16.01.2012
comment
Прекарах с този урок няколко часа, но програмата, която се използва тук, не е същата като в урока, все още мога да намеря всичко. - person B.S.; 16.01.2012

използвам този код за моята анимация за диаманти, така че опитайте това, това е начинът да направите анимация в cocos2d за вас... надявам се, че ще ви помогне напълно...

  public void openScrPpr(float duration, CCSprite scrPprRoller) {

            CCAnimation scrPprAnim = CCAnimation.animation("", 2 / 20f);

            for (int i = 20; i > 1; i--) {

                if (i >= 10 && i <= 20) {
                    scrPprAnim.addFrame(CCSpriteFrameCache.sharedSpriteFrameCache().spriteFrameByName("paperrol." + i + ".png"));
                } else {
                    scrPprAnim.addFrame(CCSpriteFrameCache.sharedSpriteFrameCache().spriteFrameByName("paperrol.0" + i + ".png"));
                }
            }

            CCAction scrPprAction = CCAnimate.action(duration, scrPprAnim, false);
            scrPprRoller.runAction(scrPprAction);
person Community    schedule 07.06.2012