Próbuję narysować pojedyncze koło w projekcie iOS SpriteKit, ale brzegi koła nie są gładkie. Chciałbym mieć ładnie narysowane kółko, tak jakbym rysował w Photoshopie (anti-aliasing). Znalazłem kilka podobnych pytań, ale mój problem pozostaje.Rysowanie gładkiego koła w zestawie sprite iOS
-(id)initWithSize:(CGSize)size
{
if (self = [super initWithSize:size])
{
self.backgroundColor = [SKColor whiteColor];
self.scaleMode = SKSceneScaleModeAspectFill;
self.size = CGSizeMake(640, 1136);
CGRect circle = CGRectMake(100.0, 100.0, 80.0, 80.0);
SKShapeNode *shapeNode = [[SKShapeNode alloc] init];
shapeNode.path = [UIBezierPath bezierPathWithOvalInRect:circle].CGPath;
shapeNode.fillColor = [SKColor redColor];
shapeNode.lineWidth = 0;
[self addChild:shapeNode];
}
return self;
}
Co tu jest?
Myślę, że musisz nadać węzłowi wartość liniiWidth większą niż 0. Antyaliasing jest domyślnie włączony, ale myślę, że dotyczy to tylko linii, a nie wypełnienia. – gabuh
Nawiasem mówiąc, antyaliasing SKShapeNode nie jest zbyt dobry, przynajmniej w testach, które zrobiłem jakiś czas temu, skończyłem tworzyć SKSpriteNodes z normalnymi obrazami. – gabuh
@ Dziękuję :). Ustawienie lineWidth = 5 wykonało lewę. Powinieneś opublikować to jako odpowiedź, aby zdobyć punkt :). Dzięki! – xpepermint