适合的视口黑色酒吧

时间:2016-10-02 14:07:04

标签: java android libgdx

我目前正在开发一款必须避开小行星的游戏。为了让游戏在每台设备上看起来都一样,我使用了FitViewport。不幸的是,我在某种程度上得到了顶部和底部的白色条,而不是黑色的。我的游戏背景也是白色的,所以看起来有点奇怪。

GameScreen:

t1

enter image description here

我将船拖入白色酒吧。

2 个答案:

答案 0 :(得分:1)

LibGDX提供视口作为处理不同宽高比的更方便的方法。您不必将MyGdxGame.WIDTH与aspectRatio相乘。只需使用MyGdxGame.WIDTH和MyGdxGame.HEIGHT初始化它。

此外,在调整大小功能中,您可以使用视口值(而不是使用常量)更改凸轮位置:

{{1}}

答案 1 :(得分:0)

我在您的代码中发现了一些问题。对于使用不同屏幕比率处理时的最佳实践,请尝试使用fill viewPort。这里只是使用填充视口编辑代码。试试吧。

         @Override
         public void create() 
         {
            float aspectRatio = (float)Gdx.graphics.getWidth() / (float)Gdx.graphics.getHeight();


            camera = new OrthographicCamera();
            camera.position.set(0, 0, 0);
            camera.update();
            //1280 is the screen width and 800 is screen height
            camera.setToOrtho(false, 1280, 800);
            viewPort = new FillViewport(1280, 800, camera);

         }


         @Override
         public void render(SpriteBatch batch) 
         {

            batch.setProjectionMatrix(camera.combined);
            batch.begin();
            em.render(batch); //render Ship and Asteroids
            [...]
         }


         @Override
         public void resize(int width, int height) 
         {
           viewPort.update(width, height);
         }

 just try with the above code . it will definitely work