【发布时间】:2018-10-25 22:29:58
【问题描述】:
创建了一个脚本,用于在作为画布的子对象的游戏对象中添加 textMeshPro 文本。但是文本在 gameView 播放模式中不可见,但在场景模式下可见。文字尺寸变大,位置为Oth点。
以下是制作 textmesh 对象的代码:
public GameObject g;
// Use this for initialization
void Start () {
TextMeshPro mText = g.AddComponent<TextMeshPro>();
mText.autoSizeTextContainer = true;
mText.text = "Hello there";
// Set various font settings.
mText.fontSize = 748;
mText.alignment = TextAlignmentOptions.Center;
}
我怎样才能让它对相机可见?为什么它不渲染?
【问题讨论】:
-
你能在场景视图中验证相机实际上是在看textmesh的方向吗?
-
感谢您的反馈。旋转相机后,我看到了物体。如果我将此 textMesh pro 对象添加到画布上,所有其他文本都是可见的,但这个文本是可见的,我必须将它指向那个方向。那么,你能不能提一下让相机在零向量处看到这个物体的方法是什么?
-
检查 Canvas 组件中的设置。是世界空间吗?屏幕空间?听起来您希望您的 UI 在屏幕空间中渲染,因此将 Canvas 的渲染模式设置为
Screen Space - Overlay。 -
感谢@Kwinten 的反馈。它已经处于 SS - 覆盖模式。我测试了其他模式。只有手动设置相机位置才能使这个文本对象可见。如果它可以像默认文本一样呈现在相同的位置,那就太好了。
-
我知道这是一个很老的问题,但我最近遇到了类似的问题,我用
TextMeshProUGUI解决了这个问题,而不是TextMeshPro。会是这样吗?