我在使用LIBGDX的
Android游戏工作.
@Override public boolean touchDown(int x,int y,int pointer,int button) { // TODO Auto-generated method stub return false; }
这里,x和y返回设备屏幕触摸的位置,值在0和设备屏幕的宽度和高度之间.
我的游戏分辨率是800×480,它会在每个设备上保持其纵横比.
我想找出一种获得触摸位置的方式,与游戏矩形相关,此图可以准确解释:
有办法吗?
我想获得与我的视口相关的触摸位置..
我用这个来保持长宽比
http://www.java-gaming.org/index.php?topic=25685.0
解决方法
取消投影你的触摸
制作用户触摸的Vector3对象:
Vector3 touch = new Vector3();
并使用相机将屏幕触摸坐标转换为相机坐标:
@Override public boolean touchDown(int x,int button){ camera.unproject(touch.set(x,y,0)); //<--- //use touch.x and touch.y as your new touch point return false; }