2

osx でシーンキットを使用して、60Hz でさまざまな視点からシーンをレンダリングしようとしています。

そのために、2 つの異なる SCNView があります。シーンのレンダリングは問題ありませんが:

-> 物理エンジンとアニメーションが共通シーンの両方の SCNView で実行されているため、実行物理速度と粒子システム速度が 2 倍になります。

質問 : パーティクル システムや物理速度に影響を与えずに、さまざまなビューでシーンのさまざまな視点をレンダリングする方法を教えてください。

私のコードは次のようになります:

class GameViewController: NSViewController,SCNSceneRendererDelegate {

    @IBOutlet weak var scnView1: SCNView!
    @IBOutlet weak var scnView2: SCNView!

    ...

    func renderer(aRenderer: SCNSceneRenderer,
        didSimulatePhysicsAtTime time: NSTimeInterval) {
        ...
    }

    ...

    override func awakeFromNib(){

        // create a the scene
        let scene = SCNScene()

        // set up the scene
        ...

        // create two cameras 
        let cameraNode1 = SCNNode()
        cameraNode.position = ...
        cameraNode.rotation = ...
        scene.rootNode.addChildNode(cameraNode1)

        let cameraNode2 = SCNNode()
        cameraNode.position = ...
        cameraNode.rotation = ...
        scene.rootNode.addChildNode(cameraNode2)

        // set up the first view
        scnView1.scene = scene

        // initial point of view
        scnView1.pointOfView = cameraNode1

        // plug game logic
        scnView1.delegate = self

        // set up the second view
        scnView2.scene = scene

        // initial point of view
        scnView2.pointOfView = cameraNode2

}

4

0 に答える 0