如何在sceneKit SCNView中的场景之间进行转换

时间:2015-11-04 04:50:57

标签: swift scenekit

嘿,我尝试为SceneKit修改此代码中的错误。我试图从精灵套件场景到SCNcene

代码不能在下面工作:

    let scene = PlayController()
    let scnView = self.view as! SCNView
    scnView.scene = PlayController()
    scene.size = scnView.bounds.size
    scene.scaleMode = .AspectFill
    let reveal = SKTransition.fadeWithDuration(0.45)
    scnView.presentScene(scene, transition: reveal)

代码工作,但仅适用于SpriteKit:

        let scene = GameScene()
        let sKView = self.view! as! SKView
        sKView.ignoresSiblingOrder = true
        scene.size = sKView.bounds.size
        scene.scaleMode = .AspectFill
        let reveal = SKTransition.fadeWithDuration(0.45)
        sKView.presentScene(scene, transition: reveal)

2 个答案:

答案 0 :(得分:0)

SceneKit中的“presentScene”API在您的代码中缺少一些额外的参数。您需要指定传入的视点并提供完成处理程序(两者都可以为零)。

- (void)presentScene:(SCNScene *)scene withTransition:(SKTransition *)transition incomingPointOfView:(nullable SCNNode *)pointOfView completionHandler:(nullable void (^)())completionHandler NS_AVAILABLE(10_11, 9_0);

答案 1 :(得分:0)

你必须:

import SceneKit
import SpriteKit

在自动完成之前识别您想要的内容。现在您可以输入scnView.presentScene(...