2017-03-02 14 views
0

我有一个相当简单的问题,我想。根据对方制作2个视口 - libgdx

我有2个FitViewports,如果我调整我的游戏大小,两个视口都调整大小。 这是伟大的工作了:

  1. When I resize my window (smaller).

  2. But this happens when im resizing it to be bigger.

正如你所看到的白色背景是正确的大小,中间的正方形是须─但我希望它和白色背景一样宽。

@Override 
public void resize(int width, int height) { 
    backViewport.update(width, height); //white background 
    gameViewport.update(width, height); //square 

} 

我想要的程序可以这样做:

@Override 
public void resize(int width, int height) { 
    backViewport.update(width, height); //white background 
    gameViewport.update(backViewport.getWidth(), backViewport.getWidth()); 

} 

获取新的背景宽度尺寸和设置我的gameViewport相同的。 我会做宽度和高度.getWidth(),因为我想它是方形的。

这不起作用,因为它在y轴上伸展我的方形。

感谢您的时间,希望有人知道解决方案。

编辑:这样一来,

gameViewport.setScreenSize(backViewport.getScreenWidth(), backViewport.getScreenWidth()); 

我实现让广场上的大小合适,但我仍然无法弄清楚,如何将它移回后台的中心。

回答

0

这里是维基,再来看看。
https://github.com/libgdx/libgdx/wiki/Viewports

您有一个正方形视口和一个矩形视口。您的视口按预期工作,他们正试图适应屏幕。您遇到问题,因为它们具有不同的大小。

我不认为你想要使用2个独立的视口,如果他们要采取相同的行动。而是使用一个视口并绘制像;

draw(x, y + bottomPadding) 

绘制游戏时。