Libgdx: есть ли у assetmanager ограничение?

Быстрый вопрос, есть ли ограничение на количество ресурсов, которые AssetManager может загружать в libgdx? Лучший способ задать свой вопрос - просто показать вам, что у меня есть сейчас:

Итак, я загружаю кучу своих ресурсов на экран-заставку перед запуском игры, как показано ниже:

    load();
    while(!assetManager.update())
    {
        System.out.println(assetManager.getProgress() * 100 + "%");
    }

проблема заключается в том, что он проходит 98% процесса обновления и никогда не завершает работу, замораживая заставку. Моя первая мысль заключалась в том, что последнее, что он пытается загрузить, имеет какую-то проблему. Это не так, потому что, если я удалю только один из загружаемых активов (неважно, какой актив), он снова начнет работать. Это заставляет меня думать, что мой AssetManager достиг определенного предела и больше не может загружать активы? Эти ресурсы не очень большие, и мой эмулятор не показывает проблем с памятью. Я уверен, что упускаю какую-то глупость, я бы очень признателен за помощь! Спасибо!

Это мой метод загрузки, который просто добавляет все мои активы в AssetManger для загрузки.

private void load() {

    assetManager.load("data/backgrounds/mainMenu.png", Texture.class);
    assetManager.load("data/backgrounds/marketStall.png", Texture.class);
    assetManager.load("data/sounds/mainMenuMusic.mp3", Music.class);
    assetManager.load("data/sounds/character.mp3", Sound.class);
    assetManager.load("data/sounds/backPack.wav", Sound.class);
    assetManager.load("data/sounds/book.wav", Sound.class);
    assetManager.load("data/sounds/button.wav", Sound.class);
    assetManager.load("data/sounds/coin.wav", Sound.class);
    assetManager.load("data/sounds/sword.wav", Sound.class);
    assetManager.load("data/fonts/black.fnt", BitmapFont.class);
    assetManager.load("data/fonts/blackBigger.fnt", BitmapFont.class);
    assetManager.load("data/fonts/blackEvenBigger.fnt", BitmapFont.class);
    assetManager.load("data/ui/buttons/buttonMainMenu.pack", TextureAtlas.class);
    assetManager.load("data/ui/menuSkin.json", Skin.class,
            new SkinLoader.SkinParameter("data/ui/buttons/buttonMainMenu.pack"));
    assetManager.load("data/ui/settings.json", Skin.class,
            new SkinLoader.SkinParameter("data/ui/buttons/settingsPack.pack"));
    assetManager.load("data/ui/adventureHub.json", Skin.class,
            new SkinLoader.SkinParameter("data/ui/buttons/adventureHubPack.pack"));
    assetManager.load("data/ui/assign.json", Skin.class,
            new SkinLoader.SkinParameter("data/ui/buttons/assignPack.pack"));
    assetManager.load("data/ui/inventory.json", Skin.class,
            new SkinLoader.SkinParameter("data/ui/buttons/inventory.pack"));
    assetManager.load("data/ui/characters.json", Skin.class,
            new SkinLoader.SkinParameter("data/ui/buttons/characters.pack"));
    assetManager.load("data/ui/itemPictures.json", Skin.class,
            new SkinLoader.SkinParameter("data/ui/buttons/itemPictures.pack"));
    assetManager.load("data/ui/adventure.json", Skin.class,
            new SkinLoader.SkinParameter("data/ui/buttons/adventure.pack"));
    assetManager.load("data/ui/shop.json", Skin.class,
            new SkinLoader.SkinParameter("data/ui/buttons/shop.pack"));
    }

если вы загрузите больше активов, то там, где оно выросло до 98%, будет ли оно ниже 98% или снова на 98%?

Morchul 26.10.2018 12:25

@Morchul Интересно, раньше он останавливался на 98,48484%, теперь замерзает на 98,55072%.

johnnyboy5566 26.10.2018 22:01

Поэтому я не думаю, что у AssetManager есть ограничение, проблема должна быть где-то в другом месте. Может быть, в AssetManager, может, и нет, но у них нет предела. Что делать, если вы используете два AssetManager для загрузки своих активов?

Morchul 29.10.2018 08:53
1
3
97
0

Другие вопросы по теме