I want my camera to keep rotating, automatically, around a object and only changing it's direction at certain moments. I saw some solutions but they were all with gesture recognizers... How can I keep it rotating at a constant velocity and change it's directions?
Here is my code:
class GameViewController: UIViewController {
var gameView:SCNView!
var gameScene:SCNScene!
var cameraNode:SCNNode!
var camera:SCNCamera!
var cameraOrbit:SCNNode!
override func viewDidLoad() {
super.viewDidLoad()
initView()
initScene()
initCamera()
}
func initView() {
gameView = self.view as! SCNView
gameView.allowsCameraControl = false
gameView.autoenablesDefaultLighting = true
}
func initScene() {
gameScene = SCNScene()
gameView.scene = gameScene
gameView.isPlaying = true
}
func initCamera() {
camera.usesOrthographicProjection = true
camera.orthographicScale = 9
camera.zNear = 1
camera.zFar = 100
cameraNode = SCNNode()
cameraNode.camera = camera
cameraNode.position = SCNVector3(x: 0, y: 5, z: 20)
gameScene.rootNode.addChildNode(cameraNode)
cameraOrbit.addChildNode(cameraNode)
cameraOrbit.eulerAngles.y = Float(M_PI)
cameraOrbit.eulerAngles.x = Float(2*M_PI)
gameScene.rootNode.addChildNode(cameraOrbit)
}