在我的游戏中,我需要获得鼠标下面的六边形。在我添加一个摄像系统之前,这个工作正常,让我有更大的六边形网格离屏。如果我移动相机,它开始表现得很奇怪而没有得到正确的六边形。
我尝试从鼠标位置减去相机位置(定义为cam.x和cam.y),从凸轮位置减去鼠标位置。显然,我不知道在这种情况下我应该做些什么。
您可以在下面看到相关代码。
<video src="sample.avi"></video>
答案 0 :(得分:0)
事实证明我使用的相机模块 - gamera - 有两个功能叫做&#39; toScreen&#39;和#to the World&#39;,后者解决了我的问题。
我得到鼠标位置(此代码在love.update中),然后使用toWorld将其转换为世界坐标。
local mx,my=love.mouse.getPosition()
local worldMx,worldMy = cam:toWorld(mx,my) -- convert mouse positions to their world coordinates