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
}