2016-11-18 107 views
1

其實我是新來的遊戲編程,我使用SpriteKit的圖形。當我加載我的圖像時,黑屏顯示。哪裏不對??下面是我在GameScene.swift中編寫的代碼。我還將my_Image放在項目中[如果需要,複製]感謝您的回覆。圖片加載黑色

import SpriteKit 

class GameScene: SKScene { 
    override func didMoveToView(view: SKView) {  
     let exampleNode=SKSpriteNode(imageNamed: "snakes & ladders.png") 
     exampleNode.size=CGSize(width: 1000, height: 1000) 
     exampleNode.anchorPoint=CGPoint(x: 0, y: 0) 
     exampleNode.position=CGPoint(x:self.frame.width/2, y:self.frame.height*0.25) 
     self.addChild(exampleNode)  
    } 
} 
+1

好像看起來像你有3個問題,1,「snakes&ladders.png」是一個可怕的文件名,我將它重命名爲snakesAndLadders.png,2,你不應該指定你的精靈的大小,讓系統爲你做。 3,消除你的錨點和位置代碼,現在就着手讓你的物品在現場 – Knight0fDragon

+0

KnightofDragon,我照你說的做,但它是黑色的 – Ehsan

+0

使用'let exampleNode = SKSpriteNode(color:SKColor.blue,size: CGSize(100,100))''而不是你的圖像,讓我們在屏幕上爲你的東西 – Knight0fDragon

回答

1

實際上,圖片的大小必須與場景相同,例如要爲iPhone 5s設置背景圖片,5s的分辨率爲640x1136,因此必須將圖片大小設置爲640像素寬度,1136像素高度。 永遠記住兩兩件事:

  1. 如果運行項目,並有X-圖像,圖片的地址不正確
  2. 如果只是黑屏,有一些問題與解決方法。
3

我碰到一個奇怪的錯誤:如果只有我的一些圖像都@ 2倍,3倍@附加到名稱爲不同的分辨率,不具有與其他圖像@ 2倍,3倍@在他們上面顯示爲黑匣子。

說我在我的項目中有兩個圖像:Image1和Image2。我將有3個獨立的Image1文件來支持更高分辨率的屏幕,所以我實際上會有Image1.png,[email protected][email protected],但我只會有Image2.png。

現在,如果我讓iOS根據應用程序正在運行的設備確定要使用哪一個,Image2將顯示爲黑色框,而Image1將是正確的。

+0

你是什麼意思? – Ehsan

+0

我添加了一個解釋 - 參見上文。 – claassenApps

+0

好找,Classen !!!我已經看到了這一點,並簡化了一個項目及其所有圖形輸入,並且從未確定導致問題的原因。這是非常有意義的,並且與我正在做的相匹配,我有幾個不同尺寸的不同尺寸的擴展,但從來沒有將這個問題與問題聯繫起來。你很可能會發現! – Confused