Swiftui SCNSceneRendererDelegate中的渲染器函数仅由输入调用,而不是自动调用
我知道这个问题以前已经讨论过很多次了。然而,我不清楚如何在SwiftUI中实现整个过程 目前: 在输入(例如移动摄影机)后,将正确调用渲染器函数 目标: 还应在不需要输入的情况下调用渲染器函数 设置: 这由Swiftui SCNSceneRendererDelegate中的渲染器函数仅由输入调用,而不是自动调用,swiftui,scenekit,Swiftui,Scenekit,我知道这个问题以前已经讨论过很多次了。然而,我不清楚如何在SwiftUI中实现整个过程 目前: 在输入(例如移动摄影机)后,将正确调用渲染器函数 目标: 还应在不需要输入的情况下调用渲染器函数 设置: 这由SCNView上的属性控制 使用SwiftUI时,有一个选项可用于SceneView.init(场景:视点:选项:preferredFramesPerSecond:抗锯齿模式:委托:技术:)这由SCNView上的属性控制 在使用SwiftUI时,有一个选项可用于SceneView.init(场
SCNView
上的属性控制
使用SwiftUI时,有一个选项可用于SceneView.init(场景:视点:选项:preferredFramesPerSecond:抗锯齿模式:委托:技术:)
这由SCNView
上的属性控制
在使用SwiftUI时,有一个选项可用于
SceneView.init(场景:视点:选项:preferredFramesPerSecond:抗锯齿模式:委托:技术:)
正是我想要的。非常感谢。正是我想要的。非常感谢你。
struct ContentView: View {
@ObservedObject var gameData : GameViewModel
var body: some View {
SceneView(
scene: gameData.scene,
pointOfView: gameData.camera,
options: [
.allowsCameraControl
],
delegate: gameData
)
}
}
class GameViewModel: NSObject, ObservableObject { ... }
extension GameViewModel: SCNSceneRendererDelegate {
func renderer(_ renderer: SCNSceneRenderer, updateAtTime time: TimeInterval) { ... }
}