2012-03-24 15 views
0

私はCCSpriteサブクラスを持っています。描画メソッドでは、線などのプリミティブを描画しています(cocos2d)。スプライトのCCTexture2Dを作成するにはどうすればよいですか? sprite.textureを使用することはできません。なぜなら、私が描いているプリミティブが含まれていないからです。描画メソッドで描画されるプリミティブを使用してCCSpriteからCCTexture2Dを作成します。

答えて

3

CCRenderTexture2Dのオブジェクトにスプライトを追加した後、スプライトをテクスチャに描画できます。例

CCSprite *spr = nil;//your sprite 
CCRenderTexture* renderTexture = [CCRenderTexture renderTextureWithWidth:spr.contentSize.width height:spr.contentSize.height]; 

spr.anchorPoint = ccp(0, 0); 
spr.position = ccp(0, 0); 
[renderTexture addChild:spr]; 

[renderTexture begin];  
[spr draw]; // or [spr visit]; 
[renderTexture end]; 

CCTexture2D *result = renderTexture.sprite.texture; 

見て今、あなたはそれがdrawメソッドで描画していることスプライトとプリミティブが含まれているテクスチャを、持っています。

希望、それはあなたを助けるでしょう:)