Я знаю про существование AssetManager'a и как он работает. Просто у меня предусмотрена анимация на экране во время загрузки, обычный крутящийся квадрат. AssetManager периодически подгружая ресурсы делает эту анимацию прерывистой. Решил всю эту штуку в отдельный поток вынести, но для загрузки ресурсов нужен opengl контекст. Есть в либе специальный механизм решающий эту проблему, и называется это всё потоком, но это ни разу не поток. Он просто отрисовывает один кадр, затем в том же потоке запускает ваш поток, приостанавливая поток рендера. Opengl использует единственный поток для визуализации, а именно в нём происходит загрузка картинок.
Код
Thread thread = new Thread(new Runnable() {
@Override
public void run() {
Gdx.app.postRunnable(new Runnable() {
@Override
public void run() {
Assets.loadGameAssets();
Assets.manager.finishLoading();
loadingFinish = true;
}
});
}
});
thread.start();
Есть другие варианты реализовать нормальную анимацию на загрузочном экране?