如何在ARKit和SceneKit中正确扩展DAE模型?

Den*_*nis 3 ios scenekit arkit

我目前正在尝试合并以下来源:

苹果SceneKit车辆演示,Resp.它的Swift版本, ARKit示例,以及resp.它的Swift版本.

每个项目本身就像一个魅力(虽然我改变了车辆演示,以便可以通过屏幕按钮控制汽车).

现在,当我尝试这两个项目结合起来,创造一个增强现实的赛车游戏,我碰上关于汽车的.dae模型的大小问题:它太大了.

我可以使用(chassis)nodes .scale属性缩放模型,但是只要添加SCNPhysicsVehicle属性和行为,汽车就会重置(?)到原始大小.我试图扩大在Xcode模型(开放DAE文件,改变缩放),但其边框仍然是相同的-告诉我,缩放没有正常工作.

任何提示?

小智 6

1)您可以直接通过art.scnassets缩放dae模型。

art.scnassets -> car.dae -> node inspector -> transforms -> scale the object

2)可以缩放3dmodel SCNAction

let scene = SCNScene(named: "art.scnassets/cup.dae")!
let node = scene.rootNode.childNode(withName: "cup", recursively: true)!
let action = SCNAction.scale(by: sender.scale, duration: 1.0)
node.runAction(action)
Run Code Online (Sandbox Code Playgroud)


Kni*_*gon 5

我喜欢做的是使用Blender或其他一些3D建模程序来调整你的dae模型的大小以便以米为单位工作.ARKit中的所有内容都基于计量表,因此通过坚持相同的指标,您可以使所有模型在一起运行,而无需猜测需要的比例因子.