我是否需要为每个新的.swift文件创建一个新的SpriteKit级别编辑器文件?

时间:2015-03-12 12:36:55

标签: ios sprite-kit

我试图熟悉Sprite Kit级别编辑器。默认情况下,有一个" gamescene.sks"附加到" gamescene.swift"。

的文件

如果我正在制作" gameoverscene"或" playscene"例如,如果我想在关卡编辑器中使用我的游戏,是否需要创建它们(.swift和.sks)?

另外,我对它的尺寸管理感兴趣。我正在制作通用设备游戏。我应该更改它的默认大小(1024x768)还是不要打扰?

此场景画布看起来也是水平的,如果我的游戏只是纵向模式,我应该更改吗?

1 个答案:

答案 0 :(得分:3)

简答。是。

原因..

每次要呈现或加载.sks文件时,都需要使用类似的类加载

let doors = SKTransition.doorwayWithDuration(1.0)
        let archeryScene = GameScene(fileNamed: "GameScene")
        self.view?.presentScene(archeryScene, transition: doors)

如果您查看常量,则使用类

加载文件

MyScene(fileNamed: "MyScene")

所以,你确实需要为每个.sks文件提供一个.swift文件。

有关.sks文件的详细信息,请查看此处。

  

Techotopia - An iOS 8 Swift Sprite Kit Level Editor Game Tutorial

当我使用Spritekit Level Editor时,我通常会将场景大小设置为960 x 640以支持最小的iPhone。 Alsong,因为你有@1x, @2x, @3x,可能@1x~iPad@2x~iPad,一切都会好的。只是为了确保ViewDidLoadinitWithSize(CGSize)添加self.scaleMode = .AspectFill.您可以将其设置为可能的版本。你的选择是,

SKSceneScaleMode.Fill
  

场景的每个轴都是独立缩放的,以便场景中的每个轴都精确映射到视图中该轴的长度。

SKSceneScaleMode.ResizeFill
  

场景未缩放以匹配视图。相反,场景会自动调整大小,使其尺寸始终与视图的尺寸相匹配。

SKSceneScaleMode.AspectFit
  

计算每个维度的缩放因子,并选择两者中较小的一个。场景的每个轴都按相同的缩放因子缩放。这可以保证整个场景可见,但可能需要在视图中使用信箱。

SKSceneScaleMode.AspectFill
  

计算每个维度的缩放因子,并选择两者中较大的一个。场景的每个轴都按相同的缩放因子缩放。这可以保证视图的整个区域都被填充,但可能会导致部分场景被裁剪。

(致@epicbyte - Dealing with different iOS device resolutions in SpriteKit