2011-04-21 56 views
1

我使用Framework Cocos2D來製作我的小遊戲。如何清除視圖上的紋理

我用3對象:

CCTMXTiledMap在在層-1

CCRenderTexture背景呈現紋理一些線在層0

CCSpriteBatchNode在層1

渲染遊戲對象我在z-oder 0上使用CCRenderTexture。當我嘗試在此上渲染一些紋理時,它的工作非常完美,但是當使用Clear函數清除視口中的紋理以重繪另一紋理時,它也很清晰。

[target clear:0.0f g:0.0f b:0.0f a:1.0f];

我該如何解決這個問題?

謝謝你! -

回答

3
 
//For removing all textures 
[[CCTextureCache sharedTextureCache] removeAllTextures]; 

//For removing un used textures 
[[CCTextureCache sharedTextureCache] removeUnusedTextures]; 
+0

嗨ShinuShajahan。感謝您的回答我的問題,但在我的情況下,我想清除紋理和重新繪製新的,你的代碼只是清除所有紋理緩存。 :) – QViet 2011-04-22 10:33:59

+0

[[CCTextureCache sharedTextureCache] removeTexture:yourTexture]; – ShinuShajahan 2011-04-22 10:37:19

+0

感謝ShinuShajahan,但它不與我一起工作,因爲我使用sprite和訪問函數來繪製texture.my代碼看起來像這樣 \t [target begin]; (距離> 1) \t如果(距離> 1) \t { \t \t int d =(int)distance; \t \t對(INT I = 0; I QViet 2011-04-23 06:33:16

0

我有這個問題,但我的解決方案是隻使用[target clear:0.0f g:0.0f b:0.0f a:0.0]; ....看到那裏的區別。阿爾法是零。儘管我們將alpha設置爲零,但我們正在用黑色清除屏幕。如果我認爲你試圖理清我認爲你是什麼的話,那將是明確的工作。