2016-09-28 37 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像素,筆畫將被正確渲染並顯示。我不知道,爲什麼在官方文件中沒有提到這個事實。