小编Mal*_*kai的帖子

AssetManager - 使用哪一个

两个版本都可以使用,但我不确定使用哪个以及为什么要使用该版本?如果您已经卸载资产,是否需要处理TextureAtlas?

版本1:加载包文件(带位置数据的TexturePacker文件)和png.

gameSpriteSheet = new TextureAtlas(Gdx.files.internal(DATA_DIR_PATH + "GameSpritesPack.txt"));

assetManager.load(DATA_DIR_PATH + "GameSpritesPack.txt");
assetManager.load(DATA_DIR_PATH + "GameSpritesPack.png");

// Call only if assetmanager's update method returns true
headerRegion = getTexture("MainMenuHeader", gameSpriteSheet);
Run Code Online (Sandbox Code Playgroud)

要卸载:

if (assetManager.isLoaded(DATA_DIR_PATH + "GameSpritesPack.txt")) {
   assetManager.unload(DATA_DIR_PATH + "GameSpritesPack.txt");
}

if (assetManager.isLoaded(DATA_DIR_PATH + "GameSpritesPack.png")) {
   assetManager.unload(DATA_DIR_PATH + "GameSpritesPack.png");
}

if(gameSpriteSheet != null) {
   gameSpriteSheet.dispose();
}
Run Code Online (Sandbox Code Playgroud)

版本2:仅加载包文件(带位置数据的TexturePacker文件).

assetManager.load(DATA_DIR_PATH + "GameSpritesPack.txt");

// Call only if assetmanager's update method returns true
gameSpriteSheet = assetManager.get(DATA_DIR_PATH + "GameSpritesPack.txt", TextureAtlas.class);
headerRegion = getTexture("MainMenuHeader", gameSpriteSheet);
Run Code Online (Sandbox Code Playgroud)

要卸载:

if (assetManager.isLoaded(DATA_DIR_PATH + "GameSpritesPack.txt")) …
Run Code Online (Sandbox Code Playgroud)

java libgdx

1
推荐指数
1
解决办法
2743
查看次数

标签 统计

java ×1

libgdx ×1