所以我想在 cocos2d 上创建一个带有基元的圆形,然后将其用作 Sprite ,请问我该怎么做? 我知道我必须使用这样的东西:
glLineWidth(16);
glColor4ub(0, 255, 0, 255);
drawCircle( ccp(s.width/2, s.height/2), 100, 0, 10, NO);
但是我很难理解它是如何工作的以及如何将它用作 Sprite
最佳答案
你真的需要CCSprite实例吗?你可以创建一个CCNode的子类,然后在它的
- (void) draw
方法将您的代码放在那里。你的圈子将有它的中心位置(0.f,0.f)
@implementation MyScene
- (void) onEnter
{
[super onEnter];
CCNode* myNode = [MyNodeSubclass node];
[node setPosition: someRandomPosition ];
[self addChild: node];
}
@end
@implementation MyNodeSubclass
- (void) draw
{
glColor4f(255, 255, 255, 255);
CCPoint center = ccp(0.f, 0.f);
CGFloat radius = 10.f;
CGFloat angle = 0.f;
NSInteger segments = 10;
BOOL drawLineToCenter = YES;
ccDrawCircle(center, radius, angle, segments, drawLineToCenter);
}
@end
这段代码就在这里写的,不是从 xcode 复制的,但它应该可以如你所愿地工作。 ccDrawCircle是一个cocos2d函数,在CCDrawingPrimitives.h中声明
关于xcode - cocos2d创建一个圆形并将其用作 Sprite ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10128249/