SCNScene 和 SceneKit 编辑器的子类化

2023-12-20

我有带有相机设置的 SCNScene 子类,我想在所有子类中使用它。

let scene01 = TheSubclassScene()
let scene02 = TheSubclassScene(named:"art.scnassets/testScene.scn")!
self.sceneArray.addObject(scene01)
self.sceneArray.addObject(scene02)

我想在运行时更改场景。当我在代码中创建场景但不使用 SceneKit 编辑器中的场景时,此方法有效。所以scene01正在工作但是scene02不是。在调试器中我可以看到数组中的两个场景。一个是 SCNSceneSubclass 类型,另一个是 SCNScene 类型。

有什么方法可以让它发挥作用吗?

更新: 这是我的场景子类

class TheSubclassScene: SCNScene
{
    let cameraNode = CameraNode()

    override init()
    {
        super.init()
        self.rootNode.addChildNode(self.cameraNode)
    }

    required init?(coder aDecoder: NSCoder)
    {
        super.init(coder: aDecoder)
    }
}

我有一个解决该问题的方法。不太好,但它有效。我实例化一个SCNScene(named: "art.scnassets/testScene.scn")然后我实例化一个TheSubclassScene()我克隆场景的 rootNode 并将其作为子节点添加到子类场景中。

let testScene = SCNScene(named:"art.scnassets/testScene.scn")!
let subclassScene = TheSubclassScene()
subclassScene.rootNode.addChildNode(testScene.rootNode.clone())
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SCNScene 和 SceneKit 编辑器的子类化 的相关文章

随机推荐

  • Java Swing:JPanel 仅在 JFrame 窗口最大化或大小更改时添加组件

    我有一个 Java 程序 它创建一个 JFrame 一个 JPanel 和几个 JTextArea 我设置了 JTextAreas 的文本 然后将它们添加到 JPanel 中 当程序加载时 我只看到空的 JFrame 但是 如果我最大化或更
  • 如何为每个阶段都有移动平均值的 df 创建 while 循环? [复制]

    这个问题在这里已经有答案了 因此 我想通过查看平均销售额来确定将其发送给谁 从而将组中每个 ID 的发货量一一分散 这是我的数据框 ID STOREID BAL SALES SHIP 1 STR1 50 5 18 1 STR2 6 7 18
  • 使用 ALTER 时出现 MySQL 未知列错误,不理解行为

    我想知道是否有人可以帮助我 我在发出 ALTER 命令时有一个奇怪的行为 该命令来自 MySQL Workbench 同步 但失败 我有一个包含字段的表 id int 11 NOT NULL AUTO INCREMENT text varc
  • 找不到 Django 管理页面

    基本上 我一直在遵循教程 但在让管理页面正常工作时我陷入了困境 我收到的错误是 在此服务器上找不到请求的 URL admin 所以我查看了很多论坛和相当多的 stackoverflow 问题 但由于我是一个完全的新手 所以我不明白其中一半
  • Spring的TransactionInterceptor覆盖了我的异常

    我有一个 DAO 类来捕捉javax persistence PersistenceException包装它们并将其作为受检查的异常重新抛出 该方法被标记为 org springframework transaction annotatio
  • 流式写入Json

    我有一大套JsonObject里面有一个ArrayList 我需要添加这些JsonObject变成一个JsonArray并将其写入文件中 我在用Gson下面是我的代码 private void myWriter List
  • 如何在 cypress 中检查电子邮件验证

    我想检查输入元素的验证 我可以检查我输入的电子邮件格式是否错误或有效 像这样 cy get email signup type validateEmail var email var possible email protected cdn
  • 为什么我的网址包含“!”当使用角度时?

    我刚刚开始使用 MEAN 堆栈 并且正在关注一些 TUT 我正在使用npm views来自 Angular 并尝试重定向 htmla标记到另一个 html 文件 然而当我去localhost 3000我明白了 localhost 3000
  • 需要控件和对象之间的双向 LiveBindings

    在Delphi XE2 LiveBindings中 我需要将任何类型的VCL控件绑定到任意 非组件 对象上的任何类型的属性 我可以单向地做到这一点 但我需要双向进行 假设我想将 TPerson PersonName 字符串绑定到 TEdit
  • 在 Swift 3 上运行后台线程

    我有一个这样的函数 fileprivate func setupImageViewWithURL url URL var image UIImage nil do try image UIImage data Data contentsOf
  • 为什么我不能对通用 IEnumerable 对象调用 ToArray? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 public static T ToArray
  • 如何在部分视图中获取与父操作关联的 RouteData?

    在 PartialView 的操作中 我想知道与父操作关联的 RouteData 该部分视图是我的母版页模板的一部分 我希望它知道作为页面渲染的一部分调用的控制器和操作 在我的 PartialView 操作中 我检查RouteData Va
  • Oracle 11g - 插入多行的最有效方法

    我有一个应用程序在 WAN 上运行缓慢 我们认为原因是对表进行多次插入 我目前正在研究同时插入多行的更有效方法 我找到了这个方法 INSERT ALL INTO MULTI INSERT VAL 1 VAL 2 VALUES 100 20
  • 从 Windows 服务执行 Process.Start 时访问被拒绝

    我正在尝试以另一个用户的身份从服务运行一个进程 Process Start applicationPath params account SecureStringPassword 服务正在 本地系统 帐户下运行 The account参数是
  • SharedArrayBuffer 未定义

    我正在使用一个名为react canvas 从几天前开始 一直输出一条错误消息 p 标签应在网络浏览器 包括 Chrome 中显示画布的区域中 我在用nextjs 我附上package json below SharedArrayBuffe
  • 用于 Android 的 Google Place API 来查找城市

    我看过教程 tutorial https developers google com academy apis maps places autocomplete android 在 android i 中使用自动完成文本视图查找城市 我已经
  • 从requirements.txt安装PyTorch

    火炬文档说使用 pip install torch 1 4 0 cpu torchvision 0 5 0 cpu f https download pytorch org whl torch stable html 安装最新版本的 PyT
  • 流星会话替换?

    在最新的 Meteor 版本 版本 0 5 8 中 Session已从服务器端代码中删除 以前我用过Session储藏客户特定的服务器的变量 该功能的替代品是什么 案例示例 User One打开浏览器 User Two打开浏览器 一个调用服
  • 如何在odoo中弹出成功消息?

    我通过单击按钮发送邀请 在单击按钮并成功发送邀请后 会弹出邀请发送成功的消息 但问题是弹出消息的主标题是Odoo Server Error 那是因为我正在使用 raise osv except osv Success Invitation
  • SCNScene 和 SceneKit 编辑器的子类化

    我有带有相机设置的 SCNScene 子类 我想在所有子类中使用它 let scene01 TheSubclassScene let scene02 TheSubclassScene named art scnassets testScen