小编dra*_*fly的帖子

Libgdx Box2D像素到电表的转换?

当尝试使用Box2D编写游戏时,我遇到了Box2D的问题.我填充了纹理和精灵的长度的像素数,以在它周围创建一个框.一切都在正确的地方,但由于某种原因一切都很慢.通过在互联网上查看我发现,如果你没有将像素转换为米,box2d可能会将形状作为非常大的对象处理.这似乎是一切运动缓慢的合理原因.

我在这个网站上发现了类似的问题,但答案似乎没有帮助.在大多数情况下,解决方案是使用缩放因子制作将像素数转换为米的方法.我尝试了这一点,但一切都放错了地方并且尺寸错误.这对我来说似乎是合乎逻辑的,因为数字改变但具有相同的含义.

我想知道是否有办法让像素意味着更少的米,所以一切都应该在相同(像素)大小的同一个地方,但意味着更少的米.如果你有不同的方式,你认为可能有所帮助,我也想听听它..

这是我用来创建相机的代码

        width = Gdx.graphics.getWidth() / 5;
        height = Gdx.graphics.getHeight() / 5;

        camera = new OrthographicCamera(width, height);
        camera.setToOrtho(false, 1628, 440);
        camera.update();
Run Code Online (Sandbox Code Playgroud)

这是我用来创建对象的方法:

public void Create(float X, float Y, float Width, float Height, float density, float  friction, float restitution, World world){ 
    //Method to create an item
    width = Width;
    height = Height;

    polygonDef = new BodyDef();
    polygonDef.type = BodyType.DynamicBody;
    polygonDef.position.set(X + (Width / 2f), Y + (Height / 2f));

    polygonBody = world.createBody(polygonDef);

    polygonShape = new PolygonShape();
    polygonShape.setAsBox(Width / 2f, …
Run Code Online (Sandbox Code Playgroud)

java eclipse jbox2d libgdx

3
推荐指数
1
解决办法
6490
查看次数

标签 统计

eclipse ×1

java ×1

jbox2d ×1

libgdx ×1