我是SceneKit的新手,我可以使用以下幫助: 我有兩個SCNViews - 一個大的顯示用戶場景的視圖(skView),可以是通過與標準allowsCameraControl選項用戶操縱啓用 - 在左角另一個小一(coordinateCrossView),其示出了座標交叉,我想以反映任何相機導航用戶執行在大SCNView在SCNScene中旋轉座標交叉以鏡像相機運動
我實現它通過使ViewController持有兩個SC NVIEWS一個SCNRendererDelegate並通過更新渲染器的橫的方向:updateAtTime:方法如下所示:
- (void)renderer:(id<SCNSceneRenderer>)renderer updateAtTime:(NSTimeInterval)time {
[self.coordinateCrossView.scene.rootNode childNodeWithName:@"cross" recursively:YES].orientation = self.skView.pointOfView.orientation;
[self.coordinateCrossView setNeedsDisplay];
}
到目前爲止好。但是,這隻有在用戶使用屏幕上的手指操縱大型SCNView時纔有效。在手指離開屏幕後的滑動手勢之後,大型SCNView中的對象繼續旋轉一點 - 但座標十字未更新。 爲什麼這種行爲沒有被pointOfView.orientation更改捕獲?