2012-06-26 55 views
0

有什麼方法可以調整精靈的可見部分的邊界嗎?爲了使它更容易理解:我有一個紋理,如圖1所示。然後我將它分解成片段並使用PRKit(圖2和3中的木材紋理)填充所產生的片段。但是結果片段具有透明(圖2和3中的綠色),並且從碎片創建精靈時,它們具有初始紋理的大小。有沒有辦法擺脫這種透明度,並調整可見部分(木材紋理)的大小,openGL或cocos2d-x意味着什麼? example 也許幫助 - draw()方法從PRKit:調整紋理的可見部分的精靈邊界

void PRFilledPolygon::draw() { 

//CCNode::draw(); 

glDisableClientState(GL_COLOR_ARRAY); 

// we have a pointer to vertex points so enable client state 
glBindTexture(GL_TEXTURE_2D, texture->getName()); 

glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_ONE_MINUS_SRC_ALPHA); 
glVertexPointer(2, GL_FLOAT, 0, areaTrianglePoints); 
glTexCoordPointer(2, GL_FLOAT, 0, textureCoordinates); 

glDrawArrays(GL_TRIANGLES, 0, areaTrianglePointCount); 

glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE); 

//Restore texture matrix and switch back to modelview matrix 
glEnableClientState(GL_COLOR_ARRAY);} 

回答

1

好吧,我這樣做。首先,我從PRFilledPolygon(PRKit)創建紋理,用於該CCRenderTexture,在此之後,我將新紋理應用於新CCSprite,然後創建一個邊界框,使用PRKit網站的數據並使用setTextureRect()將其應用於sprite。 。