[app] Create the Field in the initializer so we can pass in some default parameters

This commit is contained in:
Eryn Wells 2017-08-08 12:38:21 -07:00
parent a7a1cc244b
commit 97d5424fed

View file

@ -11,7 +11,15 @@ import MetalKit
import MetaballsKit
class ViewController: NSViewController, RendererDelegate {
internal var field = Field(size: Size()) {
private static func defaultParameters() -> Parameters {
var p = Parameters()
p.colorStyle = .gradient2Horizontal
p.color0 = Float4(0.50, 0.79, 1, 1)
p.color1 = Float4(0.88, 0.50, 1, 1)
return p
}
internal var field: Field {
didSet {
field.size = Size(size: metalView.drawableSize)
}
@ -23,6 +31,18 @@ class ViewController: NSViewController, RendererDelegate {
return self.view as! MTKView
}
override init?(nibName nibNameOrNil: String?, bundle nibBundleOrNil: Bundle?) {
let params = ViewController.defaultParameters()
field = Field(parameters: params)
super.init(nibName: nibNameOrNil, bundle: nibBundleOrNil)
}
required init?(coder: NSCoder) {
let params = ViewController.defaultParameters()
field = Field(parameters: params)
super.init(coder: coder)
}
override func viewDidLoad() {
super.viewDidLoad()