2016-09-28 138 views
1

我不明白为什么“strokeTexture”选项不适用于SKShapeNode。或者,我该如何处理纹理边界?提前致谢!SpriteKit。为什么.strokeTexture不适用于SKShapeNode?

let shape = SKShapeNode(circleOfRadius: 100) 
shape.position = CGPoint(x: 200, y: 400) 
shape.fillColor = SKColor.white 
shape.fillTexture = SKTexture(imageNamed: "test") 
shape.lineWidth = 50 
shape.strokeColor = SKColor.white 
shape.strokeTexture = SKTexture(imageNamed: "test(5)") 

输出:

enter image description here

测试图像: enter image description here

测试(5)图像: enter image description here

+0

你需要给更多的信息人,没有人可以读你的想法。什么是纹理,什么是笔触纹理,什么是预期效果 – Knight0fDragon

+0

纹理可以在屏幕截图中看到,它填充了圆圈。我期望至少有一些反应(填充,重复)。我尝试了不同的纹理,纹理颜色和大小。结果总是一样 - 黑色中风。 –

+0

那么从我所看到的,它工作正常,否则你的笔画将是白色 – Knight0fDragon

回答

1

它不会在模拟器工作!

在您的设备上试用。

我得到这个行程可能与金属正在做的感觉,而填充由于某种原因没有与金属进行的,因此是在模拟器可见。

填充也不会与设备上的对象一起旋转,但笔画/轮廓及其纹理可以。

这往往表明没有填充的SKShapeNode可能会有合理的性能。

+0

非常感谢您的答案! –

0

设置纹理的宽度和高度,用于渲染笔画,为8个像素的倍数。在你的情况下,测试(5)的尺寸为100x100。如果您将该纹理更改为另一个具有尺寸的纹理,例如96x96像素,笔画将被正确渲染并显示。我不知道,为什么在官方文件中没有提到这个事实。

相关问题