2011-09-03 121 views
0

我試了一下:背景圖案紋理

CCSprite *background = [CCSprite spriteWithSpriteFrame:frame]; 
background.textureRect = CGRectMake(0, 0, calcadaWidth, winSize.height); 
background.position = ccp(calcadaWidth * 0.5, winSize.height * 0.5); 
ccTexParams params = {GL_LINEAR, GL_LINEAR, GL_REPEAT, GL_REPEAT}; 
[background.texture setTexParameters:&params]; 

它的工作原理,如果質地普通GL尺寸如32,64×64,128×... 我的質地126x70,那麼,使用此代碼,我得到了一些黑重複之間的空間。

回答

1

Cocos2D使用OpenGL和OpenGL的限制之一是,如果你想要一個紋理重複,它必須是兩個紋理的力量。

您得到的黑色空間是OpenGL將您的紋理填充到下一個冪的位置。