0

CCLayerColor の描画メソッドをオーバーライドして境界線を描画していますが、色は変わりません。私は ccDrawXxxx を試しましたが、それらはすべて色として白しか使用していません。私もglColor4ub同じ効果で試しました。これが私の draw メソッドにあるすべてです:

CGSize selfSize = [self contentSize];
float selfHeight = selfSize.height;
float selfWidth = selfSize.width;
CGPoint vertices[4] = {ccp(0.f, 0.f), ccp(0.f, selfHeight), ccp(selfWidth, selfHeight), ccp(selfWidth, 0.f)};

glColor4f(0, 0, 1.0f, 1.0f);
glLineWidth(4.0f);
ccDrawPoly(vertices, 4, YES);

何か不足していますか?v2.0を使用しています。

4

1 に答える 1

0

これはうまくいくはずです:

ccDrawColor(1, 0, 0, 1);
ccDrawSomething(…);

cocos2d 2.0 では、glColor4f や glLineWidth などの GLES 1.1 メソッドを使用しないでください。おそらく、これは OpenGL エラーを引き起こし、GL の状態に影響を与える可能性があります。

于 2012-06-09T20:56:41.427 に答える