Как добавить эффект перехода в текущей запущенной сцене в cocos2d iphone - PullRequest
1 голос
/ 21 декабря 2011

Как добавить эффект перехода в текущую сцену бега в cocos2d iphone.Это значит, что я играю в игру, и после каждой цели я хочу создать эффект затухания или любой другой тип на текущей сцене бега.

Если я напишу это, он заменит текущую сцену новой.Но я не хочу заменять сцену.

[[CCDirector sharedDirector] replaceScene:[CCTransitionFade transitionWithDuration:1.0f scene:[GamePage scene]]];

Есть ли способ показать эффект на текущей странице следующим образом.Я знаю, что это неправильно, но я хочу что-то вроде этого:

[self transitionEffect:[CCTransitionFade actionWithDuration:0.5]];

Ответы [ 2 ]

5 голосов
/ 22 декабря 2011

Для сцены действие Layer (подкласс CCNode), связанное с непрозрачностью, не будет работать.!

Вы можете либо использовать переход, либо необходимо применить CCFadeTo ко всем вашим спрайтам.

Но если вы выбираете CCFadeTo для всех спрайтов, это потребует внезапного выделения множества действий!FPS замедляется !!

Другой лучший подход:

Скажите своему дизайнеру, чтобы получилось изображение квадрата с черной точкой размером 1 x 1 пиксель.Добавьте этот код, наконец, в методе init.

   CCSprite *temp=[CCSprite spriteWithFile:@"squaredotBlack.png"];
   temp.position=ccp(s.w/2,s.h/2);
   [self addChild:temp z:50000];    //set as most top layer
   temp.scaleX=s.w;
   temp.scaleY=s.h;
    temp.opacity=0;

Затем примените, для процесса «Затухания» всего экрана, увеличьте непрозрачность.

  temp.opacity=0; 
  [temp runAction:[CCFadeTo actionWithDuration:1 opacity:255]];   //0 to 255 

Затем примените, Для процесса «Затухания» всего экрана уменьшитенепрозрачность.

   temp.opacity=255; // this will cover whole screen with black color
              [temp runAction:[CCFadeTo actionWithDuration:1 opacity:0]]; //255 to 0
1 голос
/ 21 декабря 2011

вы можете запустить действие на всем CCLayer

[self runAction:[CCFadeOut actionWithDuration:0.5f]];

или вы можете использовать CCFadeTo для перехода к желаемой непрозрачности.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...