【发布时间】:2015-06-19 10:44:24
【问题描述】:
我正在导入一个简单的 dae 文件。我希望某些节点成为 SCNNode - MySCNNode 的子类。
MySCNNode *node = [scnView.scene.rootNode childNodeWithName:@"Box1" recursively:YES];
//additional initialization goes here
也尝试转换为 (MySCNNode *)。
但这行不通。 “节点”仍然是一个 SCNNode。为什么?
我需要向 SCNNode 添加一些属性和方法。所以我将 SCNNode 子类化。我希望场景中的节点(从 dae 导入)具有属性和行为。场景中的节点始终是 SCNNode。我希望它属于 MySCNNode 类。
【问题讨论】:
-
这不是投射的工作方式。您没有修改被投射的对象。
-
另外,子类化
SCNNode不是一种常见的模式。你想做什么? -
我需要给 SCNNode 添加一些属性和方法。所以我将 SCNNode 子类化。我希望场景中的节点具有属性和行为。场景中的节点始终是 SCNNode。我希望它属于 MySCNNode 类。
-
为什么子类化 SCNNode 不是一种常见的模式?它在哪里说不是一个好习惯?我可以在哪里阅读更多相关信息?
标签: scenekit