Bowl of Ramenこのサイトから3Dオブジェクトをお借りして、ARkitを使ってラーメンのモデルを表示しようとしたのですが、3Dオブジェクトがラーメンの具材や、器、レンゲなど細かく分離されてしまっていて、Identityに名前をつけて呼び出しても3Dモデルの一部しか呼び出すことができません。
画像はscnファイルを開いてモデルをクリックした時のものです、チャーシューの部分しか選択できていません。
分離している3Dモデルを1つのオブジェクトとして表示させることはできるのでしょうか?
またはXcode内で1つのオブジェクトに変換できたりするのでしょうか?
それともMayaのようなソフトで3Dオブジェクトを加工するしか無いのでしょうか?
※追記
ラーメンのオブジェクトを追加しているコードは下記になります。
tapされたらオブジェクトが落ちてくるイメージです。
Swift
1func addRamen(hitResult: ARHitTestResult){ 2 guard let scene = SCNScene(named: "model.scn", inDirectory: "Ramen", options: nil) else {fatalError()} 3 guard let ramenNode = scene.rootNode.childNode(withName: "Ramen", recursively: true) else {fatalError()} 4 5 let (min, max) = ramenNode.boundingBox 6 let w = CGFloat(max.x - min.x) 7 8 let magnification = 0.1 / w 9 ramenNode.scale = SCNVector3(magnification, magnification, magnification) 10 //nodeのポジションを設定 11 ramenNode.position = SCNVector3(hitResult.worldTransform.columns.3.x, hitResult.worldTransform.columns.3.y + 0.20, hitResult.worldTransform.columns.3.z) 12 13 //重力 14 let shape = SCNPhysicsShape(node: ramenNode, options: nil) 15 let gravity = SCNPhysicsBody(type: .dynamic, shape: shape) 16 gravity.restitution = 1 17 //重力をラーメンに設定 18 ramenNode.physicsBody = gravity 19 sceneView.scene.rootNode.addChildNode(ramenNode) 20 }
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/10/24 11:29 編集
2018/10/25 05:01 編集
2018/10/25 10:33