Вы можете рисовать линии, переопределив метод «draw», что, в свою очередь, приведет к эффекту «stroke», который вам нужен.Вопрос немного не хватает в деталях, поэтому я постараюсь максимально использовать его.
Допустим, вы хотите нарисовать простую линию на экране, вы можете сделать следующее:
@interface MyLine: CCNode
{
CGRect lineRect;
}
@property(nonatomic) CGRect lineRect;
+(id)lineWithRect:(CGRect)rect;
@end
@implementation MyLine
@synthesize lineRect
+(id)lineWithRect:(CGRect)rect
{
MyLine *node = [MyLine node];
[node setRect: rect];
return node];
}
-(void)draw
{
glEnable(GL_LINE_SMOOTH);
ccDrawLine(ccp(rect.origin.x, rect.origin.y), ccp(rect.size.width, rect.size.height));
}
@end
С этим классом вы сможете вызывать:
MyLine *line = [MyLine lineWithRect:CGRectMake(0, 0, winSize.width, winSize.height)];
, который затем проведет линию от левого нижнего края экрана к верхнему правому углу экрана.
Вы бы не конвертировали это в «спрайт», так как в этом не было бы необходимости - но вы могли бы тогда рассматривать это, как если бы это была какая-либо другая графика в вашей игре, поскольку теперь это собственный подкласс CCNode.... содержащий в себе все добро, которое приходит с этим (позиционирование и т. д.).