Я бы изменил режим шкалы сцены с scene.scaleMode = .resizeFill
на scene.scaleMode = .aspectFit
.В игре размер кадра SKView не требуется, и вы можете работать в своем собственном координатном пространстве (свойство размера сцены), например, установить значение 100 x 100. -> Настройка Interface Builder.
Не связывайте ничегона раме / границах SKView.Код из вашего контроллера сцены должен работать так, как показано ниже, и все это связано с размером сцены.
override func didMove(to view: SKView) {
let numRows = 7
let numCols = 7
var counter = 0
let squareSize = CGSize(width: size.width/7, height: size.width/7)
for row in 0..<numRows{
for col in 0..<numCols {
if counter == 49 {
break
}
let spriteNode = SKSpriteNode(imageNamed: "piece\(counter)")
spriteNode.size = squareSize
spriteNode.position = CGPoint(x: 0-(size.width*0.43)+(CGFloat(col)*spriteNode.size.width), y: -CGFloat(row)*spriteNode.size.height + size.height/3 )
addChild(spriteNode)
counter = counter+1
}
}
}