5

CCLayer 全体をぼかす方法がすでに実装されていることを誰かが知っているかどうか知りたいです。少し不透明度のある黒に設定された単純な CCLayerColor を使用しますが、背景をぼかしてブロブを区別できないようにしたいと考えています。

4

2 に答える 2

0

ノイズを含む半透明の小さなタイルを作成し、それを繰り返すようにテクスチャ パラメータが設定されている画面を覆うスプライトを作成することはできませんか?

CCSprite *blurSprite = [CCSprite spriteWithFile:@"blurtile.png" rect:CGRectMake(0, 0, 1024, 768)];
blurSprite.position = ccp(512,384);
ccTexParams params = {GL_LINEAR,GL_LINEAR,GL_REPEAT,GL_REPEAT};
[blurSprite .texture setTexParameters:&params];
[self addChild:blurSprite];

これらのパラメーターが少し間違っている可能性がありますが、一般的なアイデアが得られるはずです。

于 2013-06-13T02:13:39.327 に答える
0

これは CCLayerColor で行うことができます。

-(void)fadeBackground
{
    ccColor4B color = {0,0,0,255};
    CCLayerColor *fadeLayer = [CCLayerColor layerWithColor:color];
    [self addChild:fadeLayer z:7];
    fadeLayer.opacity = 0;

    id fade   = [CCFadeTo actionWithDuration:1.0f opacity:160];//200 for light blur
    id calBlk = [CCCallBlock actionWithBlock:^{
        //show pause screen buttons here 
        //[self showPauseMenu];
    }];
    id sequen = [CCSequence actions:fade, calBlk, nil];

    [fadeLayer runAction:sequen];
}
于 2013-02-18T05:38:30.773 に答える