1

の不透明度を変更できCCSpriteますCCSpriteBatchNodeか?

以下は機能していないようです。

((CCSprite *)[batchNode getChildByTag:myTag]).opacity = 0.5;

スプライトは、不透明度が変更されて表示されるのではなく、消えるだけです。

4

1 に答える 1

13

これが、タイプを確認することをお勧めする理由です。opacityのプロパティCCSpriteはGLubyteです。GLubyte の typedef を見ると、実際には unsigned char であることがわかります。つまり、0 から 255 までの整数値を取ります。sprite.opacity = 0.5暗黙的に浮動小数点値を unsigned char に変換すると、0.5 の小数部分が切り捨てられ、sprite.opacity が 0 になります。

于 2012-08-08T01:28:19.247 に答える