2015-08-20 22 views
0

我無法理解我如何讓我的SKSpriteNode適合每個iPhone。我有一個背景圖像和一個單獨的椅子圖像,需要處於相同的位置,併爲每個iPhone縮放。當我把它看起來很好時,如果說6+交換到5s,那麼它不在正確的位置,並且不會縮放到iPhone。這是我目前如何縮放和定位我的SKSpriteNode。在swift中,我如何縮放和定位SKSpriteNode以適合每個iPhone?

chair.position = CGPointMake(self.size.width * 0.50, self.size.height * 0.35) 
chair.setScale(0.50) 
chair.zPosition = 1.0 
self.addChild(Chair) 
+0

需要更多的信息來給出具體的幫助,但要看的東西:你有多種尺寸的圖像或自己縮放它們嗎?你場景的scaleMode是什麼?你有沒有爲你的SKSpriteNodes設置定位點?你的代碼也包含一個錯誤,你的'addChild'添加一個類名而不是一個變量。 –

回答

0

我想你有一個不同於iPhone 5s(x2)到iPhone 6+(x3)的屏幕比例因子的問題。只需乘以屏幕因子即可解決問題。代碼(Swift)看起來像下面這樣:

let screenScaleFactor = UIScreen.mainScreen().scale 
chair.position = CGPointMake(self.size.width * 0.50 * screenScaleFactor, self.size.height * 0.35 * screenScaleFactor) 
chair.setScale(0.50 * screenScaleFactor) 
chair.zPosition = 1.0 
self.addChild(Chair)