从 Canvas 坐标转换为世界坐标

Convert from Canvas coordinates to In world coordinates

每次按下鼠标,我都会记录它的坐标。我需要的是在鼠标被点击的确切位置实例化的立方体。

我查看了表单帖子,得到的要么是答案 已经过时,要么是代码确实难以阅读且混乱。我尝试将 Camera.main.ScreenToWorldPointVector3 一起使用,但坐标始终与相机相同。 这是代码行:

Instantiate(prefab, Camera.main.ScreenToWorldPoint(new Vector3(Input.mousePosition.x,  Input.mousePosition.y, 0)), Quaternion.identity);

如何将 canvas 坐标转换为世界坐标?

您想使用相反的功能:

Camera.ScreenToWorldPoint(Vector3 position);

position: A screen space position (often mouse x, y), plus a z position for depth (for example, a camera clipping plane).