Gameプロジェクトの挙動 その1

今回は、Gameプロジェクトの挙動についてざっくり解析する

・GameViewController.swift

ここで確認するのは下記部分。

    override func viewDidLoad() {

        super.viewDidLoad()

        if let view = self.view as! SKView? {

            // Load the SKScene from 'GameScene.sks'

            if let scene = SKScene(fileNamed: "GameScene") {

                // Set the scale mode to scale to fit the window

                scene.scaleMode = .aspectFill

                

                // Present the scene

                view.presentScene(scene)

            }

            

            view.ignoresSiblingOrder = true

            

            view.showsFPS = true

            view.showsNodeCount = true

        }

    } 

 

まず、viewDidLoad()をオーバーライドしている。

    override func viewDidLoad() {

        super.viewDidLoad()

初回起動時にこの関数が呼ばれる模様。

基底クラスのviewDidLoad()呼び出しはおまじないと考えておく。

 

次に、Game画面となるGameSceneの設定をしている。

        if let view = self.view as! SKView? {

            // Load the SKScene from 'GameScene.sks'

            if let scene = SKScene(fileNamed: "GameScene") {

                // Set the scale mode to scale to fit the window

                scene.scaleMode = .aspectFill

                

                // Present the scene

                view.presentScene(scene)

            }

        }

let は定数型で、定数viewに、self.viewを、代入している。

as! SKViewはキャスト、self.viweはSKView型にキャストされている。

次は、定数sceneに、SKSceneを設定。

"GameScene"を設定し、GameScene.sksに紐づけている。

scene.scaleMode = .aspectFillで、 sceneの画角を設定している。

.aspectFillで、画面サイズにぴったり合うように、拡縮してくれている。

最後に、view.presentScene(scene)で、GameSceneを表示させている。

 

まずはここまで。

ざっくり解析なので、間違いなどあれば連絡ください。