- В чем разница между AsynchronousAssetLoader и AssetLoader?
- Когда документация ссылается на ресурсы не-OpenGL и активы OpenGL в соответствующих методах loadasynch () и loadync (), чтоэто на самом деле означает?
- Как правильно добавить анимацию загрузки в мой менеджер ресурсов, если я использую объекты Animation из класса GitDecoder?На данный момент я просто загружаю анимацию прямо из GifDecoder и получаю к ней доступ прямо из игровой логики.
- Я читал, что использование GifDecoder нецелесообразно, и его следует использовать только для создания анимации, если вы в затруднении.Что такое «правильный» метод для использования анимации в libgdx?Это казалось довольно интуитивным для меня.Класс GitDecoder не работает?
DungeonAssetManager.java
public class DungeonAssetManager {
public AssetManager manager;
public Animation<TextureRegion> playerAnimation;
public Animation<TextureRegion> enemyAnimation;
public DungeonAssetManager(){
manager = new AssetManager();
}
public void queueAddDefaultAnimations(){
manager.load(playerImage, Texture.class);
manager.load(enemyImage, Texture.class);
playerAnimation = GifDecoder.loadGIFAnimation(Animation.PlayMode.LOOP, Gdx.files.internal("Textures/Sprites/knight_run.gif").read());
enemyAnimation = GifDecoder.loadGIFAnimation(Animation.PlayMode.LOOP, Gdx.files.internal("Textures/Sprites/demon_run.gif").read());
}
...
loadingScreen.java
...
queueAddDefaultAnimations();
queueAddDefaultImages();
queueAddDefaultMusic();
queueAddDefaultSounds();
queueAddDefaultTextures();
parent.assMan.manager.finishLoading();
...
game.java
...
// sb = SpriteBatch
sb.draw(animation.getKeyFrame(elapsed), body.getPosition().x - ((.5f) * width), body.getPosition().y - ((.5f) * height), width, height);
...