为什么我的Sprite Nodes没有在我的通用应用程序上调整大小?

时间:2017-07-07 19:47:32

标签: ios swift sprite-kit skspritenode

更改缩放模式后,我的精灵节点大小不正确。我使用@ 3x,@ 2x和@ 1x图像,因此SpriteKit通常会自动调整大小。切换设备时,它们没有调整大小。例如,在我的iPhone 6s +上,精灵节点大小是完美的,而在我的iPhone 5上,节点大小与我在iPhone 6s +上的大小相同。我已尝试将比例模式更改为.aspectFill.resizeFill,但无效。这是我的GameViewController viewDidLoad目前:

 override func viewDidLoad() {
    super.viewDidLoad()

    if let scene = MainMenu(fileNamed:"MainMenu") {
    let skView = self.view as! SKView

      skView.showsPhysics = true
      skView.showsFPS = true
      skView.showsNodeCount = true
      skView.ignoresSiblingOrder = true

      scene.scaleMode = .aspectFill
      scene.anchorPoint = CGPoint(x: 0, y:0)

      scene.size = skView.bounds.size
      skView.presentScene(scene)
    } }

我不知道出了什么问题。另外,这是一张节点在iPhone 6s +上的外观图: iPhone 6s+

以下是精灵节点在我的iPhone 5上的外观图片:iPhone 5

我只是不知道什么是错的。什么都没有调整大小。

如果删除scene.size = skView.bounds.size,会发生以下情况: enter image description here

1 个答案:

答案 0 :(得分:1)

所有3张图片的图片尺寸是否相同?如果1x图像是64x64,2x应该是128x128,3x应该是192x192。