簡體   English   中英

Android libGDX關於精靈大小

[英]Android libGDX about sprite sizes

我正在使用Android中的libGDX進行游戲,並且我對子畫面的大小有疑問。 我想使用與景觀場景中的屏幕背景相同的精靈,並且我希望該背景與每一個16:9設備完全匹配。

我的問題是我不知道該圖片的最佳尺寸是什么,因為如果我制作1920x1080的圖片,它將占用大量內存並損害游戲性能,或者如果我制作的圖像很少,則在某些情況下看起來會很糟糕設備。 在這種情況下該怎么做?

感謝您的建議。

這是我將如何處理這種情況。 我將選擇16:9的相機尺寸,也許是1024 * 576(或其他適合您的尺寸),還可以使用.jpg格式(而不是.png格式)來節省內存,這樣可以節省很多空間

在Libgdx中,您不必擔心設備大小不同,只要使用相機或正交相機即可。 即使在非16:9的設備上進行拉伸,我也將確保屏幕正常顯示

這是一些代碼片段

public class LoadScreen extends Screen
{

   Game game;
   SpriteBatch batcher;
   OrthographicCamera cam;
   AssetManager manager;
   public static BitmapFont font;
   private String dir="data/";

public LoadScreen(Game game,SpriteBatch batcher)
 {
    super(game);
    this.game=game;
    this.batcher=batcher;
    cam = new OrthographicCamera(GameConstants.CAMERA_WIDTH, GameConstants.CAMERA_HEIGHT);
    cam.position.set(GameConstants.CAMERA_WIDTH / 2, GameConstants.CAMERA_HEIGHT / 2,0);
    manager=new AssetManager();
    font = new BitmapFont(Gdx.files.internal("data/billy.fnt"), Gdx.files.internal("data/billy.png"), false);
    loadData();
}
private void loadData()
{
    manager.load(dir+"monkey",TextureAtlas.class);
    manager.load(dir+"levelBg.jpg",Texture.class);
    manager.load(dir+"gamescreen.jpg",Texture.class);
    manager.load(dir+"apple.png",Texture.class);
}
}

在資產類別中

公共類資產{

public static AssetManager manager;
public static TextureAtlas atlas;
private static String dir = "data/";
public static Sprite levelBg;

public static void load(AssetManager manager)
{
    Assets.manager = manager;
    loadAtlas();
    loadTextures();
    loadImageFromAtlas();
    loadFont();
}
private static void loadAtlas()
{
    atlas = manager.get(dir + "monkey", TextureAtlas.class);
}

private static void loadTextures()
{
    levelBg = new Sprite(manager.get(dir + "levelBg.jpg", Texture.class));
    gameBg = new Sprite(manager.get(dir + "gamescreen.jpg", Texture.class));
    apple = new Sprite(manager.get(dir + "apple.png", Texture.class));
}
}

PS:您可以做一些與您想要的略有不同的操作,但這可以節省大量內存,就好像您將Sprite Sheet制成.jpg一樣,圖像的透明度也會丟失

暫無
暫無

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

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