/// <summary> 将世界坐标转换为Ugui坐标 </summary>
/// <param name="position"> 需要转换的三维坐标点 </param>
public void OpenWorldToScreen(Vector3 position)
{
Vector3 anchorPos = mainCamera1.WorldToScreenPoint(position);
}
将转换好的坐标放置到UI中
[Header("相机")]
[SerializeField]
private Camera mainCamera1;
[Header("对话框UI")]
[SerializeField]
private Image talk;
/// <summary> 将世界坐标转为屏幕坐标(UI) </summary>
public void OpenWorldToScreen(Vector3 position)
{
Vector3 anchorPos = mainCamera1.WorldToScreenPoint(position);
///将输入的三维坐标转换为屏幕坐标,并赋值给UI talk
talk.transform.position = anchorPos;
}
官网API脚本
Camera.WorldToScreenPoint
public Vector3 WorldToScreenPoint (Vector3 position);