int width = 320;
int height = 5;
int textureWidth = ccNextPOT(width);
int textureHeight = ccNextPOT(height);
unsigned int size = textureWidth * textureHeight * sizeof(ccColor4B);
ccColor4B * pixels = (ccColor4B *)malloc(size);
memset(pixels, 0, width * height * sizeof(uint));
for ( int y=0; y<height; ++y ) {
for ( int x=0; x<width; ++x ) {
int index = y * textureWidth + x;
pixels[index] = ccc4(60, 60, 60, 190);
}
}
CCTexture2D *textureOfBar = [[CCTexture2D alloc] initWithData:pixels pixelFormat:kCCTexture2DPixelFormat_RGBA8888
pixelsWide:ccNextPOT(width) pixelsHigh:ccNextPOT(height) contentSize:CGSizeMake(width, height)];
CCSprite *bar = [CCSprite spriteWithTexture:textureOfBar];
[bar setAnchorPoint:ccp(0,1)];
[bar setPosition:ccp(0,gameplayLayer.winSize.height)];
[self addChild:bar];
좀 쓸데없이 복잡한감이 없지 않아 있지만.. 어쨌든 성공 -,.-;;
참고url :Manually creating pixel data for a CCTexture2D results in a black sprite
'Dev > Cocos2D' 카테고리의 다른 글
[링크] Thread와 Cocos2d (0) | 2013.12.10 |
---|---|
CCSpriteBatchNode의 기본 사용법 (0) | 2013.08.21 |
cocos2d의 터치 우선순위(priority)는 낮은것부터 ! (0) | 2013.08.07 |
패턴등의 이미지 배열시 검은 줄 제거 (0) | 2013.06.04 |
스케쥴(Schedule) 액션(RunAction) 등이 오류없이 실행되지 않을때는 isRunning_ 을 살펴보자 (0) | 2013.04.05 |