2014-01-06 33 views
0

我使用SpriteKit構建遊戲類型的應用程序。在我想創建一個區域的場景之一中,用戶將能夠繪製。不幸的是,使用SKShapeNodes會產生鋸齒狀的線條並導致FPS丟失。我想過使用核心圖形方法,但我需要畫出的線條成爲節點的一部分。那麼有沒有辦法將Node用作CG的畫布?SKNode內的Cor​​eGraphics元素

回答

0

可以繪製一個CGImage,並從使用textureWithCGImage:

+0

感覺有點哈克。我希望能有更優雅的解決方案,但我想我將不得不接受你的建議。謝謝。 – smoothRenegade

+1

這是完全合法的。如果你使用的是cocos2d,你基本上會做同樣的事情,繪製到CCRenderTexture上,然後從紋理中創建一個精靈(或直接使用紋理,這是主要區別)。 – LearnCocos2D

1

SKNode documentation

不同意見,你不能創建執行自定義繪製SKNode子類。

所以我覺得答案是不,你不能這樣做。

每個節點確實有一個scene屬性,並且scene確實有包含它的view的鏈接。但是使精靈動畫快速的事情是精靈是罐頭的 - 圖像已經被繪製並且只需要被複制。除SKSpriteNode以外的節點類型也針對速度進行了相似優化。因此,精靈類中沒有繪圖方法 - 您的代碼無法進行自定義繪圖。

+0

嗯,這就是我擔心的創建SKTexture。但它是有道理的。 – smoothRenegade