Android 使力在不同的分辨率下工作
我面临方框2d中的多分辨率问题 首先,我需要使物体具有多分辨率,我通过按比例因子缩放顶点来解决它 现在我需要使所有不同分辨率设备的作用力相同, 有什么办法吗 我想让这行代码在所有设备上都能正常工作Android 使力在不同的分辨率下工作,android,box2d,andengine,game-physics,Android,Box2d,Andengine,Game Physics,我面临方框2d中的多分辨率问题 首先,我需要使物体具有多分辨率,我通过按比例因子缩放顶点来解决它 现在我需要使所有不同分辨率设备的作用力相同, 有什么办法吗 我想让这行代码在所有设备上都能正常工作 obj.getBody().applyForce( new Vector2(0, -220), obj.getBody().getWorldCenter()); 这里220是我应该用这个公式使它多分辨率的因子 public float getY(float value) { y = (val
obj.getBody().applyForce( new Vector2(0, -220), obj.getBody().getWorldCenter());
这里220是我应该用这个公式使它多分辨率的因子
public float getY(float value) {
y = (value / 540) * 100;
return (y / 100) * CAMERA_HEIGHT;
}
这里540是基本分辨率。我打电话给getY(220)使其具有多分辨率
当我在540*960分辨率上使用这段代码时,它可以正常工作,但当我更改设备(比如720*1280分辨率)时,游戏的运行速度非常慢。
有人能帮我解决这个问题吗?我试图解释我的问题。
提前感谢。不要缩放物理。缩放图形。您应该在每个分辨率之间共享物理坐标系,以使您的模拟在不同的设备上相同。您可以通过将相机设置为设备像素数以外的值来缩放图形 AnEngine将为缩放做所有其他事情 你需要从这个设备上得到的只是x和y像素的比例 在我在这个链接上的例子中,我只设置了一个变量,所有的变量都按这个比例缩放 所以,您只需决定要使用的初始比例,然后在不担心比例的情况下使用Box2D。您只需缩放正在查看场景的摄影机
我说的和其他人一样,你似乎不理解他们。摄像头高度的值是基于设备的分辨率,对吗?是的,对,摄像头高度和摄像头宽度是设备的分辨率我同意安德鲁的观点-更准确地说,我说选择一个尺寸(800x480,随便什么),写下这个,并让AndEngine使用正确配置的RatioResolutionPolicy缩放图形。@jmr499485:不是任何大小,但大小box2d已调整为可以使用。手册中有一部分是关于它的:图形正确缩放,我现在没有图形问题,我面临的问题是力,力在所有设备上的作用都不一样。@JawadAmjad:因为你在缩放物理。就像你说的“我通过按比例因子缩放顶点来解决它”——这是不正确的。不要这样做。在不同的设备上保持物理完全相同。规模graphics@Andrew我正在缩放图形,但出现了一个身体问题,身体没有缩放。所以我需要缩放身体。哦,是的,谢谢你,现在我找到你了。事实上,当其他朋友解释解决方案时,我没有使用你提到的摄像系统。现在我已经调整了相机的比例,一切正常。谢谢。