首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在SCNView上添加3d模型

在SCNView上添加3d模型
EN

Stack Overflow用户
提问于 2015-05-14 15:46:31
回答 2查看 1.1K关注 0票数 0

我已经开始构建一个超级泡泡游戏:)使用SceneKit,但有一件事我不能决定。

所以..。我使用第三方工具创建了一个3d模型,然后将其导出为.dae文件,之后我在SCNView上添加了.dae文件。

例如,假设我需要在SCNView上添加2个3d模型。在我看来,有两种方法可以从SCNView上的.dae文件中添加3d模型:

1-创建一个包含两个模型的.dae文件,然后在SCNView上添加一个场景

2-在单独的.dae文件中导出每个3d模型,并在SCNView上添加两个.dae文件

我认为这两种方式都很好,但我想知道是否有最佳实践来添加几个3d模型从.dae文件在SCNView上。

EN

回答 2

Stack Overflow用户

发布于 2015-05-15 19:02:53

根据您拥有的型号,这两个都是不错的选择。

如果你有很多种类的模型,比如角色,环境,道具等,我会选择每个文件。这不是最优化的方式,但它会在创建和编辑资源时为您节省大量时间。

如果您使用的是2D形式的单个Spritesheet,例如道路的一部分,建筑物的集合,过山车轨道;我会创建一个文件,并从中查询我需要的节点。

这更多的是关于它对你来说有多方便,因为在加载和准备场景之后,这并不重要。

票数 0
EN

Stack Overflow用户

发布于 2015-05-29 16:12:24

我尝试限制.dae文件的数量,但我仍然使用不止一个。

如果您计划将任何纹理与.dae文件一起导出,最好尝试限制.dae文件的数量,以便更容易维护(和重用)用作纹理的任何图像文件。我会使用.dae文件

我为“静态”世界使用了一个.dae文件,当我读取这个文件时,我创建了一个.flattenedClone()来进行优化。

然后,我从其他.dae文件中选择动态对象,例如:(仅限示例代码)

代码语言:javascript
运行
复制
let importedDae = SCNScene(named: "3d.scnassets/units.dae")!
let warrior = importedDae.rootNode.childNodeWithName(
    "Warrior", recursively: true)!.clone() as! SCNNode
myRealGameScene.rootNode.addChildNode(warrior)

我个人更喜欢创建和控制我自己的SCNScene对象,并且更像库一样使用导入的.dae文件,每个文件都对相同类型的对象进行分组。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30232020

复制
相关文章

相似问题

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