加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ios – 如何从SKView过渡到SCNView?

发布时间:2020-12-14 19:31:45 所属栏目:百科 来源:网络整理
导读:嘿好吧我有一个UIView只是标准的默认控制器,但后来我在另一个. swift文件中有一个SCNView所以我可以从标准的UIViewController转换到SKScene但是我不能从SKScene过渡到SCNcene码 class PlayController: UIViewController,ADBannerViewDelegate,SKPhysicsConta
嘿好吧我有一个UIView只是标准的默认控制器,但后来我在另一个. swift文件中有一个SCNView所以我可以从标准的UIViewController转换到SKScene但是我不能从SKScene过渡到SCNcene码

class PlayController: UIViewController,ADBannerViewDelegate,SKPhysicsContactDelegate,SKSceneDelegate,SCNSceneRendererDelegate,SCNPhysicsContactDelegate{


    let scnView = self.view as! SCNView
    let skScene = scnView.overlaySKScene

    scnView.overlaySKScene = skScene
    scnView.backgroundColor = UIColor.whiteColor()

    scnView.scene = FieldScene
    scnView.delegate = self

    scnView.allowsCameraControl = true
    scnView.showsStatistics = false

我正在尝试转换到的控制器如上所示从UIViewController开始,然后在线下进一步作为SCNView.
在这行代码中让scnView = self.view为! SCNView,但当我试图从SKScene过渡到这个场景时,我将如何在代码Swift中做到这一点?

我正在开始的控制器如下所示

import iAd
import UIKit
import GameKit
import SceneKit
import StoreKit
import SpriteKit
import QuartzCore
import Foundation
import AVFoundation
import AudioToolbox

//============================================================
class MainMenuController: SKScene,SCNPhysicsContactDelegate{


override func didMoveToView(view: SKView) {
}

解决方法

overlaySKScene

let skScene = scnView.overlaySKScene和scnView.overlaySKScene = skScene的实现应该改变,因为它们无效

创建SKScene对象:let overlayScene = SKScene(size:CGSizeMake(200,200)).

设置基础对象的位置:base.position = CGPointMake(75,0).

将基础对象添加到场景:overlayScene.addChild(base).

将场景设置为叠加:scnView.overlaySKScene = overlayScene.

转变

您可以通过调用视图的presentScene:withTransition:incomingPointOfView:completionHandler:method来添加转换.

sceneView.presentScene(nextSceneToLoad(),withTransition:skTransition,incomingPointOfView:nil,completionHandler:nil)

另一个例子.

let transition = SKTransition.pushWithDirection(.Right,duration: 1.0)
self.sceneView?.presentScene(SCNScene(),withTransition: transition,incomingPointOfView: nil,completionHandler: nil)

overlaySKScene API Reference

presentScene API Reference

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读