You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

旋转相机下如何将鼠标坐标投射至3D世界?

Godot Camera.project_position 方法非垂直视角偏差问题

当相机垂直向下(-90度)时,Camera类的project_position方法运行正常,但相机非垂直向下旋转时,瞄准点与鼠标位置存在明显偏差。

观察到的规律:

  • 第1、3象限:瞄准点位于鼠标后方
  • 第2、4象限:瞄准点位于鼠标前方
  • 鼠标x=0或z=0时:瞄准点与鼠标位置完全吻合

另外,Godot中RayCast的工作机制需要指定cast_to点,这让我难以自行实现鼠标坐标转世界坐标。

视觉示例

-90度相机旋转

-90度相机旋转

-60度相机旋转

-60度相机旋转

坐标偏差示例

鼠标悬停在右上角方块上时,投射的3D世界点应接近(10, 2, -10),但输出显示相机投射的世界点与角色朝向存在偏差
鼠标应指向(10, 2, -10)附近

内容的提问来源于stack exchange,提问作者James T.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 06:40:28