我目前正在尝试合并以下来源:
Apples SceneKit Vehicle Demo,Resp. its Swift version, ARKit by example和resp. its Swift version。
每个项目本身就像一个魅力(虽然我改变了车辆演示,以便汽车可以通过屏幕按钮控制)。
现在,当我尝试将这两个项目结合起来创建一个增强现实赛车游戏时,我遇到了关于.dae车型大小的问题:它太大了。
我可以使用(机箱)节点.scale
属性扩展模型,但是只要我添加SCNPhysicsVehicle
属性和行为,汽车就会重置(?)到原始大小。我试图在Xcode中扩展模型(打开dae文件,更改比例),但它的边界框保持不变 - 这告诉我重新缩放没有正常工作。
任何提示?
答案 0 :(得分:5)
我喜欢做的是使用Blender或其他一些3D建模程序来调整你的dae模型的大小以便以米为单位工作。 ARKit中的所有内容都基于米,因此通过坚持相同的指标,您可以让所有模型在一起运行,而无需猜测比例因子需要什么。
答案 1 :(得分:5)
1)您可以直接通过art.scnassets缩放dae模型。
art.scnassets -> car.dae -> node inspector -> transforms -> scale the object
2)可以按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)
答案 2 :(得分:1)
我不确定如何直接在Xcode中修复模型。但是,您可以在搅拌机中修复它。首先将对象导入blender。选择对象并观察其尺寸。将对象缩放到所需的尺寸,然后按Ctrl + A应用它们,然后选择比例。或者,从对象菜单中,您可以选择应用 - >规模。现在,您可以使用更正的尺寸导出模型。