2014-07-03 57 views
0

我使用getWidth和getHeight來縮放我的Libgdx項目中的紋理。如果我想讓紋理在不同的手機上看起來一致,我應該使用getWidth/Height來縮放,還是一些數值,例如width = 100,height = 50?什麼是Gdx.graphics.getWitdth()測量?

回答

0

是的,getWidthgetHeight均以像素爲單位進行測量。儘管您可以將這些尺寸用於維度,但通常情況下,爲了使手機保持一致的外觀,您需要使用某種類型的相機(對於2D遊戲,通常爲OrthographicCamera)。

你可能想要做的是給相機一些固定的寬度和高度,然後通過相機的轉換完成所有的繪圖。像這樣:

SpriteBatch batch = new SpriteBatch(); 
OrthographicCamera camera = new OrthographicCamera(800, 600); 
//some code here 
batch.setProjectionMatrix(camera.combined); 
batch.begin(); 
//draw your textures here 
batch.end(); 

這應該保持您的圖像的規模在手機之間保持一致。請記住,如果拉伸/壓縮太多,您的紋理可能看起來扭曲。

+0

相機會自動拉伸以適應整個手機屏幕嗎? – henzdaddy

+0

@henzdaddy是的,相機只是改變座標系。相機的視口應填滿屏幕 – clearlyspam23

0

@ clearlyspam23這就是我正在尋找的,謝謝!再次

OrthographicCamera camera = new OrthographicCamera(); 
camera.setToOrtho(false, 800, 600); 

的另一種方式看起來像是位於800相機的起源,600

感謝:剛一說明,設置它像!