Boxes (OS X)/GameViewController.swift

    Copyright (C) 2016 Apple Inc. All Rights Reserved.
    See LICENSE.txt for this sample’s licensing information
    An `NSViewController` subclass that stores references to game-wide input sources and managers.
import SceneKit
class GameViewController: NSViewController {
    // MARK: Properties
    let game = Game()
    // MARK: Methods
    override func viewDidLoad() {
        // Grab the controller's view as a SceneKit view.
        guard let scnView = view as? SCNView else { fatalError("Unexpected view class") }
        // Set our background color to a light gray color.
        scnView.backgroundColor = NSColor.lightGray
        // Ensure the view controller can display our game's scene.
        scnView.scene = game.scene
        // Ensure the game can manage updates for the scene.
        scnView.delegate = game
    override func keyDown(with _: NSEvent) {
        // Causes boxes to jump if a key press is detected.
    override func mouseDown(with _: NSEvent) {
        // Causes boxes to jump if a click is detected.