私は私がタップ位置にシーンにいくつかのテキストを追加するARKitとシンプルなアプリ作成しています:それは作品ARKitでテキストの向きを設定するにはどうすればよいですか?
@objc func tapped(sender: UITapGestureRecognizer){
let sceneView = sender.view as! ARSCNView
let tapLocation = sender.location(in: sceneView)
let hitTest = sceneView.hitTest(tapLocation, types: .featurePoint)
if !hitTest.isEmpty{
self.addTag(tag: "A", hitTestResult: hitTest.first!)
}
else{
print("no match")
}
}
func addTag(tag: String, hitTestResult: ARHitTestResult){
let tag = SCNText(string:tag, extrusionDepth: 0.1)
tag.font = UIFont(name: "Optima", size: 1)
tag.firstMaterial?.diffuse.contents = UIColor.red
let tagNode = SCNNode(geometry: tag)
let transform = hitTestResult.worldTransform
let thirdColumn = transform.columns.3
tagNode.position = SCNVector3(thirdColumn.x,thirdColumn.y - tagNode.boundingBox.max.y/2,thirdColumn.z)
print("\(thirdColumn.x) \(thirdColumn.y) \(thirdColumn.z)")
self.sceneView.scene.rootNode.addChildNode(tagNode)
}
を、私は、テキストの向きに問題があります。私はカメラの元の位置でそれを追加すると、テキストの向きは大丈夫です、私はテキストを前方に見ることができます(サンプル1)。しかし、カメラを左右に回してタップしてテキストを追加すると、追加されたテキストが側面から見えます(サンプル2)。
サンプル1:
サンプル2:
私はそれを解決するためにいくつかの簡単なトリックがあるはずです知っているが、このトピックの初心者として、私はできませんでしたこれまでのところそれを見つけてください。
テキストオブジェクトを配置するときにどのような動作を求めていますか?移動中にテキストが常にカメラの方に向くようにしたいのですか、または最初に配置されたときの方向に固定されたままにしますか? – dbn