Для сцены действие 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