簡體   English   中英

libgdx精靈尺寸是米還是像素?

[英]libgdx sprite dimension meters or pixels?

我一直在閱讀“學習Libgdx游戲開發”。 我嘗試了以下代碼段:

// First the camera object is created with viewport of 5 X 5. 
OrthographicCamera camera = new OrthographicCamera(5, 5);

我有一個尺寸為32像素乘32像素的紋理。 我由此形成一個精靈

Sprite spr = new Sprite(texture);

// I set the size of Spr as 
spr.setSize(1,1);

根據這本書,上面的尺寸是米而不是像素。

我不明白屏幕上是如何發生從米到像素的映射的? 當我在屏幕上繪制精靈時,它的大小甚至不到半米,更不用說1。

同樣,基礎紋理的大小為32 X 32像素。 當我調整大小時,子畫面的大小也會改變。

那么,spr.setPosition(x,y)的尺寸是多少? 它們是米還是像素?

該庫將像素用於紋理大小等尺寸,並將米用於游戲內單位。

setPosition將以游戲單位移動對象。 當您移動一個對象X個游戲單位時,像素數會根據相機的投影矩陣以及其他設置而變化。

如果您考慮一下,以像素為單位移動就沒有意義。 如果相機A的放大倍數大於相機B,則在每個相機的視圖中移動X像素將需要移動兩個不同的量。

編輯:很抱歉,我在您的理解中做出了一些假設,部分地誤解了該問題,並坦率地使用了誤導性措辭。 關鍵是米的慣例不是內置的,這是您必須執行的慣例,因為Box2D中1像素與1米的比率沒有意義。 我使用的措詞暗示內部setPosition關心儀表,但是您應該自己進行縮放。 我在libgdx中看到的比例通常是30像素= 1米。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM