[LayaAir3]如何在3D场景添加文字呢

我使用了UI3D,制作了一个2D文字Prefab,确实实现了在场景中显示文字,但是文字内容是在Prefab中写好了的,我运行过程中无法进行文字更改,
已邀请:

LayaAir小牛

赞同来自:

可以直接在prefab中进行修改,或者您可以直接说明需求,我来提供实现方法

Archangelᴱᴿᴵᑦ

赞同来自:

我是这样实验了一下可以,供参考
我在 Scene2D 的 RuntimeScript 中用 this.scene3D 去访问到 UI3D,
再用 ui3d.sprite 获取 prefab 的根节点.
 
export class RuntimeScript extends RuntimeScriptBase {
onAwake(): void {
let sprite3d: Laya.Sprite3D = this.scene3D.getChildByName("m_Sprite3D");
let ui3d: Laya.UI3D = sprite3d.getComponent(Laya.UI3D);
let ui3d_root: Laya.Sprite = ui3d.sprite;
console.log("ui3d_root", ui3d_root);
let txtField: Laya.GTextField = ui3d_root.getChildByName("txt");
txtField.text = "New String";
}
}

要回复问题请先

商务合作
商务合作