我如何在RealityKit中访问Reality Composer的模型组件?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我如何在RealityKit中访问Reality Composer的模型组件?相关的知识,希望对你有一定的参考价值。
我正在尝试在我的代码中更改在Reality Composer中创建的文本实体的模型组件,但这是!将gui创建的实体强制转换为对具有模型组件的实体的引用。
self.entityReference = scene.realityComposerEntity as! HasModel
textEntity.model!.mesh = MeshResource.generateText("New Text")
RealityKit中的文本实体应该具有模型属性,因为它在ARView中具有视觉外观,但是我不知道如何访问它。有谁知道如何?
还有其他简便的方法可以使用RealityKit
/ Reality Composer
在同一位置动态显示不同的文本吗?
答案
要在RealityKit中访问Reality Composer的
ModelComponent
,请尝试以下方法:
import RealityKit
class ViewController: UIViewController
@IBOutlet var arView: ARView!
override func viewDidLoad()
super.viewDidLoad()
arView.environment.background = .color(.darkGray)
let textAnchor = try! SomeText.loadTextScene()
let textEntity: Entity = textAnchor.realityComp!.children[0]
textEntity.scale = [5,5,5]
var textModelComp: ModelComponent = textEntity.children[0].components[ModelComponent]!
var material = SimpleMaterial()
material.baseColor = .color(.systemTeal)
textModelComp.materials[0] = material
textAnchor.realityComp!.children[0].children[0].components.set(textModelComp)
arView.scene.anchors.append(textAnchor)
以上是关于我如何在RealityKit中访问Reality Composer的模型组件?的主要内容,如果未能解决你的问题,请参考以下文章
如何在运行时将 3D 内容加载到 RealityKit 应用程序中?
ARKit 或 RealityKit——我们如何检测真实世界的物体?