2013-02-17 9 views
5

CCLayer全体をぼかすためにすでに実装されている方法を知っている人がいれば、私は不思議です。私は単純なCCLayerColorを使って少し不透明に黒を設定していますが、私は見分けがつかないくぼみになるほど十分に背景をぼかすことができるようにしたいと思います。CCLayerColorをぼかす(ポーズメニュー用)

+0

http://www.cocos2d-iphone.org/forum/topic/6315を参照してください。 –

答えて

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]; 
} 
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]; 

これらのパラメータは多少間違っているかもしれませんが、一般的な考え方を示す必要があります。

関連する問題