Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/287.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 3d文本上的transform.LookAt正在向后显示文本_C#_Unity3d - Fatal编程技术网

C# 3d文本上的transform.LookAt正在向后显示文本

C# 3d文本上的transform.LookAt正在向后显示文本,c#,unity3d,C#,Unity3d,我使用的是Unity 2019.2 这是我的密码: GameObject[] damageTexts = GameObject.FindGameObjectsWithTag("CombatText"); foreach (GameObject damageText in damageTexts) { damageText.transform.LookAt(Camera.main.transform); } 它正在制作我想在相机上看到的所有3D文本。但是文本是倒写的吗? 为什么?我怎样

我使用的是Unity 2019.2

这是我的密码:

GameObject[] damageTexts = GameObject.FindGameObjectsWithTag("CombatText");

foreach (GameObject damageText in damageTexts)
{
    damageText.transform.LookAt(Camera.main.transform);
}
它正在制作我想在相机上看到的所有3D文本。但是文本是倒写的吗? 为什么?我怎样才能解决这个问题呢?

LookAt

damageText.transform.LookAt(damageText.position - Camera.main.transform.position);
旋转变换,使前向向量指向/target/的当前位置

Unity UI组件的前向向量通常指向远离摄影机的方向。因此,如果要使用
LookAt

damageText.transform.LookAt(damageText.position - Camera.main.transform.position);
这只是让它看一个相反方向的位置


您还可以使用
LookRotation

damageText.transform.rotation = Quaternion.LookRotation((damageText.position - Camera.main.transform.position).normalized);

这可能是因为3D文本网格的正向变换指向相反的方向(为什么,谁知道呢)。将它们放置在具有正确方向的父对象中,或者相对于相机(相机位置+(相机位置-文本位置)*2)查看文本后面的点。