如何为SKShapeNode设置小于1的lineWidth?

时间:2013-12-18 14:36:37

标签: ios objective-c sprite-kit skshapenode

我正在尝试制作一个具有非常思考笔画的SKShapeNode(如0.25像素)。似乎lineWidth为1是我可以去的最小值,至少在屏幕上看起来是这样的,无论是什么值设置为小于1。

SKShapeNode *buttonOutline;
buttonOutline = [[SKShapeNode alloc] init];

CGMutablePathRef myPath = CGPathCreateMutable();
CGPathAddRoundedRect(myPath, NULL, CGRectMake(0, 0, 100, 30), 10, 10);    
buttonOutline.path = myPath;
buttonOutline.strokeColor=[SKColor grayColor];

buttonOutline.lineWidth= 0.25;

buttonOutline.name = [NSString stringWithFormat:@"%@-buttonOutline", thisButtonName];
buttonOutline.position =  CGPointMake(thisXPos,thisYPod);
buttonOutline.alpha = 1;

2 个答案:

答案 0 :(得分:12)

尝试将antialiased属性设置为false。抗锯齿增加了一些额外的像素。

// Objective-C
buttonOutline.antialiased = NO

// Swift
buttonOutline.antialiased = false

答案 1 :(得分:0)

将比例设置为.25并记住正确升级坐标(在这种情况下乘以4)