绘制半透明的图形,半透明值无效,不知道是cocos2d-x的bug还是我个人的问题

不知道是cocos2d-x的bug还是我个人的问题:
在代码了设置了:CCTexture2D::PVRImagesHavePremultipliedAlpha(true);
在这个情况下,在用gl进行图形绘制的时候,比如我想绘制一个白色半透明的圆形代码如下:
ccDrawColor4F(1, 1, 1, 0.1f);
ccDrawSolidCircle(ccp(0,0), radius, CC_DEGREES_TO_RADIANS(90), 100, false);

结果绘制出来的是纯白色的,半透明值无效,如果不设置CCTexture2D::PVRImagesHavePremultipliedAlpha(true);就正常了。

请教怎么解决加了CCTexture2D::PVRImagesHavePremultipliedAlpha(true);后绘制的半透明问题?

:6::6::6::6::6::6::6:

在cocos2d-x引擎中 使用PVR格式的资源时 必须保证其大小尺寸是正方形 你懂的(宽高相等) 也可以是其他形状

是PVR格式的输出 要用PVR格式的文件 这好像在IOS对图片加载的内存有关 (原因好像是:避免内存浪费)

没有设置上面那句,资源会渲染错误 成白色块

设置预乘alpha后,混合变成 Src.rgb + Dest.rgb*(1-Src.alpha),自然渲染为白色。
因此你应该做手动预乘,即 ccDrawColor4F(0.1f, 0.1f, 0.1f, 0.1f);