我完全困惑於如何正確調整基於風景的背景圖片的大小。截至目前,我在做GameScene(size: self.frame.size)
,並且我打印出屏幕的大小,所以我知道用什麼尺寸來製作背景,結果我的背景應該是1024x768,但這看起來不像橫向尺寸?所以我做了我的背景1024x768,但整個圖像不適合我的iphone,因爲它的景觀,因爲iphone lanscape尺寸不是1024x768。我如何製作背景,看起來與我的iphone的尺寸爲1:1?我能想到的唯一方法是,如果我設置了GameScene(size: CGPoint(x: 1334, y: 750))
,但是不會被其他設備搞砸了?什麼是最好的方法來解決這個問題?我有一位藝術家將爲我做一個背景,但我不知道給他什麼尺寸。SpriteKit - 無法理解要製作背景的尺寸
回答
在處理Sprite Kit的場景時,儘量不要關注屏幕大小,因爲屏幕大小不再是一個因素(現在這不是100%的絕對事實,這是一個通用規則)
相反,把你的SKScene看作是一個虛擬屏幕。你的SKScene的大小是你的SKScene的「分辨率」,並且操作系統將在後臺工作以找出如何將1個虛擬像素(從這裏開始我們將稱之爲點)轉換爲屏幕像素(這裏稱爲out作爲像素)
現在只有一種特殊情況,操作系統將更改分辨率(場景大小)以匹配屏幕,即.resizeFill
其他3將永遠不會改變您的分辨率。
.aspectFill
和.aspectFit
將確保您指向像素轉換保持和相等的寬度和高度(例如,1點可以等於4×4像素)的唯一差別是.aspectFill
將擴大到填滿整個屏幕,這意味着過量點將被渲染在原始屏幕邊界之外[so(0,0)可能位於最左邊像素的左邊20像素處,因此不可見],並且.aspectFit將填充,直到它碰到屏幕邊界,留下黑色條以填充未使用的像素。
現在.fill
不保持等寬和高的像素點比例,並且在4:3轉到16:9屏幕的情況下,您會注意到指向像素的點將是5:4,因爲16:9屏幕比4:3寬25%。這會讓你產生不良影響。
所以,當處理你的遊戲時,你需要弄清楚所需的效果。如果將場景大小設置爲1024x768,則所有非視網膜iPad都將具有1:1的像素點比例,其中視網膜的像素點比例爲2:1。對於iphone 5來說,每一點(iphone是1168,你的場景是1024,所以你是1168/1024),然後是768,你會得到大約1.14像素,你會失去25%,因爲ipad是25%更高比橫向的iphone。這意味着只有576點纔會顯示,其餘的是隱藏的屏幕空間。
基本上,因爲您正在使用2種不同的長寬比,所以您無法同時使用iPad和iPhone執行通用應用程序的1:1。你將不得不製作2套不同的資產,或者採取一些不會改變遊戲體驗的創意自由。這完全取決於遊戲,不幸的是沒有人能夠回答它,直到他們理解了你的遊戲。
- 1. ninepatch背景的理想尺寸
- 2. 背景圖像的尺寸
- 3. 背景尺寸不能正常工作
- 4. 尺寸背景圖片?
- 5. 離子全尺寸背景
- 6. Android壁紙/背景尺寸
- 7. 問題背景尺寸
- 8. 背景圖片尺寸
- 9. iOS背景圖片尺寸
- 10. 無盡的背景spritekit
- 11. 如何製作動畫spritekit背景?
- 12. 調整SVG背景圖像的尺寸
- 13. 屏幕尺寸的背景圖像
- 14. 用於背景的尺寸是多少?
- 15. Div背景圖像的最大尺寸
- 16. 背景 - 尺寸覆蓋式的自舉
- 17. 背景圖像的最大尺寸CSS
- 18. 的Cocos2D V2 CCSprite背景圖像尺寸
- 19. IONIC2背景圖像的尺寸時
- 20. 獲取背景圖像的尺寸
- 21. div中的全尺寸背景圖像?
- 22. 燦背景圖片的最大尺寸
- 23. 網站背景圖片的尺寸
- 24. XXHDPI的Android背景圖像尺寸
- 25. SpriteKit zPosition背景
- 26. 如何設置UINavigation尺寸以適合背景圖像尺寸?
- 27. Inno CustomPage全尺寸背景圖片
- 28. 根據背景圖像尺寸div
- 29. 得到背景圖像尺寸
- 30. RS2008背景圖片尺寸調整
在視圖控制器出現之前,在視圖控制器中正確設置場景的縮放模式和大小。 –