0

CCNodeの[訪問]機能について質問があります

元の画像は輪郭がはっきりしていて、特別なことは何もなく、中に 5 つの葉のスプライトが含まれています。

画面キャプチャ :

http://farm7.static.flickr.com/6107/6248992365_eab5346264_o.png

次に、[CCNode visit] を使用してコピーしたいと思います。

そして、ここにコードがあります

-(CCSprite *)flattenSprite:(CCSprite*)sprite textureSize:(float)textureSize {

    CCRenderTexture *rt = [CCRenderTexture renderTextureWithWidth:textureSize height:textureSize];
    [rt begin];

    // store the original sprite position
    CGPoint p=sprite.position;
    //set original sprite to a target point for open GL to "visit"
    sprite.position=ccp(textureSize/2,textureSize/2);
    // open GL visit
    [sprite visit];
    //original sprite return to original point
    sprite.position=p;

    [rt end];
    return [CCSprite spriteWithTexture:rt.sprite.texture];
}

この機能により、ステージ上に存在するスプライトの量を制限することでアプリケーションのパフォーマンスを最適化できますが、「コピーされたスプライト」には暗いエッジがありました。特にスプライトが互いに重なっている場合は、奇妙に見えます。

手がかりがあれば教えてください/このダークエッジの問題に関する有用な情報が得られた場所

4

1 に答える 1