修改3D模型的边界框大小

时间:2016-01-02 18:58:31

标签: ios xcode scenekit

此功能应该在有限的空间中将3D模型添加到屏幕:

.apply

如果在将dae文件添加到Xcode之前更改dae文件的尺寸,则代码可以工作,而尺寸我指的是Xcode的Bounding Box Size属性。我想知道是否可以直接从Xcode更改此边界框大小。从UI看起来似乎不可能。是否可以使用代码?或者,甚至更好地,将对象维持比例缩小到XYZ的大小,范围在0.3-> 0之间。 0.7?目前,我的物体显示XYZ的盒子大小超过45。此外,如果我在上面的代码中使用.scn文件而不是.dae,那还能用吗?

编辑: 如果我通过代码更改大小,它会对效率产生影响吗?我注意到对于较大的.dae模型,fps从60下降到30并且游戏速度变慢。

1 个答案:

答案 0 :(得分:2)

更改carNode的{​​{1}}属性会降低汽车的外观尺寸。

但是,我认为您可以将.DAE加载到Xcode场景编辑器中。这将允许您提前缩小它(在Node Inspector中,option-command-3)。如果需要,您还可以添加纹理。然后将其另存为.SCN文件,该文件已压缩并应加载更快。

在代码或Xcode场景编辑器中更改缩放不会影响效率。但是,降低汽车的复杂性(多边形/顶点的数量)会加快速度。

考虑为您的汽车节点创建scale个实例。这将导致渲染器在节点远离摄像机时使用替代的低分辨率几何体。 WWDC 2014幻灯片演示了这一点,幻灯片38,AAPLSlideLOD.m。