首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Java Slick2d -如何将鼠标坐标转换为世界坐标

Java Slick2d -如何将鼠标坐标转换为世界坐标
EN

Stack Overflow用户
提问于 2012-04-11 04:39:53
回答 2查看 1.4K关注 0票数 0

我正在翻译我的主课的渲染。如何根据翻译得到鼠标位置?

代码语言:javascript
运行
复制
public void render(GameContainer gc, Graphics g) 
        throws SlickException 
{
    float centerX = 800/2;
    float centerY = 600/2;
    g.translate(centerX, centerY);
    g.translate(-player.playerX, -player.playerY);
    gen.render(g);
    player.render(g);
}

playerX = 800 /2 - sprite.getWidth();
playerY = 600 /2 - sprite.getHeight();

我通过.2f * delta更新播放器的按键位置

图片帮助解释

i92.photobucket.com/albums/l22/occ31191/Untitled-4.png

EN

回答 2

Stack Overflow用户

发布于 2012-04-11 12:05:02

世界坐标=相机位置+鼠标位置

照相机的位置是在我对这个问题的回答:Slick2D and JBox2D. How to draw中计算/解释的。

票数 2
EN

Stack Overflow用户

发布于 2012-04-11 11:43:10

你正在制作一个基于瓷砖的游戏,每个瓷砖似乎都有相同的大小。在这种情况下,您不需要一个广义的非投影。

想象一下完整的地图。视图仅显示其中的一部分;在某个地方,您需要将视图的(x,y)设置存储到完整的地图中。由于鼠标坐标相对于视图端口,所以需要将此偏移量添加到鼠标坐标中。现在,您可以很容易地通过使用移动鼠标坐标上的模块操作来获得瓷砖坐标,该坐标具有瓷砖的宽度和高度。

实际上,这是窗口坐标到平铺坐标的坐标转换。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10099895

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档