首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >简单创建SCNNode时抛出NSSecureCoding

简单创建SCNNode时抛出NSSecureCoding
EN

Stack Overflow用户
提问于 2019-10-14 22:37:56
回答 1查看 407关注 0票数 0

我正在尝试从我的.scn (最初是我转换为.scn的DAE文件)创建一个SCNNode,执行此操作时,控制台会生成以下内容:

代码语言:javascript
复制
[general] NSSecureCoding allowed classes list contains [NSObject class],
which bypasses security by allowing any Objective-C class to be implicitly
decoded. Consider reducing the scope of allowed classes during decoding by
listing only the classes you expect to decode, or a more specific base class
than NSObject.

这是导致抛出的代码:

代码语言:javascript
复制
if let usrScene = SCNScene(named: "Test.scnassets/Models/player.scn") {
    usr = usrScene.rootNode.childNode(withName: "root", recursively: true)!
}

场景图如下: root->player

我怎样才能移除掷物(或者我应该)?用外行人的话来说,这是什么意思?

EN

回答 1

Stack Overflow用户

发布于 2019-10-15 06:10:36

对于那些有相同问题的人:

我从来没有想过抛出是什么意思,但我用下面的代码设法摆脱了它:

代码语言:javascript
复制
extension SCNNode {
    convenience init?(daePath: String) {
        self.init()

        guard let scene = SCNScene(named: daePath) else {
            return
        }

        for childNode in scene.rootNode.childNodes {
            addChildNode(childNode)
        }
    }
}

然后像这样导入...

代码语言:javascript
复制
usr = SCNNode(daePath: "Test.scnassets/Models/player.dae")
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58379027

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档