如何解决相对于图像位置和比例绘制线条
我正在 Unity 中制作游戏,我将 Canvas 设置为 Screen Space - Overlay,它的背景为绿色,如您从图像中看到的那样。我还有一个背景为蓝色的 RawImage 作为 Canvas 的孩子,玩家将不得不在 RawImage 内绘制一个像汽车或房子这样的对象。现在,即使我在屏幕上的随机位置实例化该线给它协调的 (0,0)。 我需要帮助的是找到一种转换坐标的方法,因此我只使用 RawImage 的内部坐标。例如,我将传递给线的 (0,0) 坐标必须转换为 RawImage 的左下角。并且最大宽度或高度也应该取决于 RawImage 的宽度和高度。
这是我现在拥有的 CreateLine 函数:
public void CreateLine(int x,int y)
{
currentLine = Instantiate(linePrefab,Vector3.zero,Quaternion.identity);
currentLine.transform.parent = GameObject.Find("GameMenu(Clone)").transform; //Make the line a child of the Canvas named GameMenu
lineRenderer = currentLine.GetComponent<LineRenderer>();
lineRenderer.SetPosition(0,new Vector3(x,y,99));
lineRenderer.SetPosition(1,99));
}
任何数量的帮助将不胜感激。祝您有美好的一天!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。