我想制作一个简单的游戏引擎,但当我试图将2D鼠标坐标映射到我的世界中的3D坐标时,我陷入了一个困境。基础游戏有一架飞机作为地面,因为它将会是(有希望随着时间的推移)RTS游戏引擎。2D到3D地图OpenGL
我的问题是,我不能真正拿出任何有用的东西。飞机位于0,-100,-300点,大小约为1000x1000。我的相机在0,0,0,场景旋转60度,给人一种“鸟眼”凸轮的印象。
我在想三角方程,我知道我的相机的高度和角度,可能计算距离会给我正确的坐标,但这只是一个想法。
有人请给我一些建议吗?
你对飞机位于(0,-100,-300)点的确切含义是什么?尝试使用包含点和法线向量来指定它。但是,你说的使用三角函数是正确的。 –
问题是我想移动我的建筑物,这就是为什么我需要坐标。 – SPL
所以基本上你需要将鼠标坐标变换为游戏世界的“地面”坐标?标题会误导人们:这是2D到2D的转换。 – SoonDead