2013-05-07 21 views
0

我正在用libgdx開發一款遊戲。我有一個三星注入4克,在我的電腦遊戲看起來很大,但在我的手機看起來我想看的方式。在android中的應用程序的不同外觀?

但是,當我在Eclipse上的Android機模擬器運行應用程序,它看起來像我的電腦上:大

我使用API​​_7,我不明白爲什麼。我的角色的大小是128px,64px。我使用廣泛的一面,當我使用libgdx創建舞臺時,我放置了這個。

stage = new Stage(Gdx.graphics.getWidth(),Gdx.graphics.getHeight(),true); 
+2

如果Resoltion較高,你的角色會變得更小,因爲你的舞臺總是有最大分辨率,但你的角色仍然保持其大小。例如調整角色和調整大小的階段,看起來應該是一樣的。否則你需要提供更多信息,以便我們可以幫助你。 – BennX 2013-05-07 07:55:13

+0

好吧,我在photoshop上製作了我的角色,它有128x64 pxeles,但我沒有改變他的尺寸,我只是使用默認尺寸,你的意思是我必須改變他的尺寸,在所有screans上看起來相似? – user1431866 2013-05-07 14:04:18

+0

是的。如果屏幕更大,分辨率更高,則無法保持128x64。那麼確定你可以但它的確比你小。所以你需要根據屏幕的分辨率調整角色的大小。 – BennX 2013-05-07 14:16:28

回答

1

如果Resoltion較高的性格就會小一些,因爲你的舞臺總是最大分辨率而是你的性格仍然停留在它的大小。例如調整角色和調整大小的階段,看起來應該是一樣的。否則你需要提供更多的信息,所以我們可以幫助

一個小例子會。如果你的分辨率是1280x640,你的字符就是屏幕的10%吧?現在想象的分辨率將是640x320。你的角色將是屏幕的20%。所以你需要把它縮小到在較小的屏幕上具有相同的比例。

在更大的一個,你需要使它的比例相同。使用

@Override 
    public void resize(int width, int height) { 
..... //resize here depending on the width and the height 
    } 

在您的屏幕上調整大小。我會建議你使用OrthographicCamera,你給你的舞臺stage.setCamera(cam);。所以你只需要在調整大小時改變camera viewport,你的舞臺確實合適。但保持跟蹤aspect_ratio



你甚至可以開始與固定的分辨率工作。所以你有一個解決你的工作,其餘完成你的相機zoom
要獲得固定的分辨率,請使用相機放大和縮小以始終在screen上具有整個分辨率。這取決於您的屏幕的分辨率。因此,如果分辨率較小(顯示遊戲的屏幕),則縮小以顯示整個遊戲區域。否則你放大,直到在視口邊緣有一個邊緣(這似乎是困難的東西)好吧,看起來這是怎麼回事?

@Override 
    public void resize(int width, int height) { 
     Gdx.app.log("Screen", "Resize screen: " + getName()); 
     cam.viewportHeight = height; 
     cam.viewportWidth = width; 
     if (Config.VIRTUAL_VIEW_WIDTH/cam.viewportWidth < Config.VIRTUAL_VIEW_HEIGHT 
       /cam.viewportHeight) { 
      cam.zoom = Config.VIRTUAL_VIEW_HEIGHT/cam.viewportHeight; 
     } else { 
      cam.zoom = Config.VIRTUAL_VIEW_WIDTH/cam.viewportWidth; 
     } 
     cam.update(); // update it ;) 
    } 

這實際上就是一切。 VIRTUAL_VIEW_WIDTHVIRTUAL_VIEW_HEIGHT分辨率爲px,我在我的遊戲hud上工作。請注意使用正確的相機。所以這是我給我舞臺的相機。可能看看blog。他確實解釋了你需要了解的關於Sceen2d的一切以及如何調整尺寸等。

相關問題