cocos2d-x细节之自绘图形透明度问题

如若重载CCSprite的draw函数,记得设置blend混合模式,默认是没有透明度的。

示例如下:

void draw()
{
    glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); //cocos2d默认混合模式
    //根据圆的半径来计算分割份数,一般够用
    ccDrawColor4F(color.r, color.g, color.b, color.a);
    ccDrawSolidArc(CCPointZero, radius, radius*10, radsrc/180*M_PI, raddest/180*M_PI);  //注意这里用坐标(0,0)!
}


如果没有glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA),绘制的图形就不会有透明效果!

你可能感兴趣的:(C/C++/汇编,Cocos2d-X)