Я хочу создать несколько окон игры из моего DekstopLauncher.java. Второй должен иметь возможность взаимодействовать с первым, например, запрашивать строку.Добавление нескольких окон в LibGDX?
Можно ли это сделать? И как?
Это то, что я пытался в классе DeskopLauncher:
Это создает первое окно:
LwjglApplicationConfiguration configForTiles = new LwjglApplicationConfiguration();
TilePresets tilesWindow = new TilePresets();
LwjglApplication tiles = new LwjglApplication(tilesWindow, configForTiles);
И это вторая
LwjglApplicationConfiguration configForMap = new LwjglApplicationConfiguration();
MapMaker mapWindow = new MapMaker();
LwjglApplication map = new LwjglApplication(mapWindow, configForMap);
Создание только один работает. Но если добавить и это дает мне эту ошибку:
LwjglApplication: Couldn't initialize audio, disabling audio
java.lang.IllegalStateException: Only one OpenAL context may be instantiated at any one time.
at org.lwjgl.openal.AL.create(AL.java:113)
at org.lwjgl.openal.AL.create(AL.java:102)
at org.lwjgl.openal.AL.create(AL.java:206)
at com.badlogic.gdx.backends.lwjgl.audio.OpenALAudio.(OpenALAudio.java:72)
at com.badlogic.gdx.backends.lwjgl.LwjglApplication.(LwjglApplication.java:83)
at com.badlogic.gdx.backends.lwjgl.LwjglApplication.(LwjglApplication.java:64)
at com.whoplays.mapmaker.desktop.DesktopLauncher.main(DesktopLauncher.java:16)
Exception in thread "LWJGL Application" java.lang.IllegalStateException: From thread Thread[LWJGL Application,5,main]: Thread[LWJGL Application,5,main] already has the context current at org.lwjgl.opengl.ContextGL.checkAccess(ContextGL.java:184)
at org.lwjgl.opengl.ContextGL.forceDestroy(ContextGL.java:241)
at org.lwjgl.opengl.DrawableGL.destroy(DrawableGL.java:130)
at org.lwjgl.opengl.Display$5.destroy(Display.java:834)
at org.lwjgl.opengl.Display.destroy(Display.java:1095)
at com.badlogic.gdx.backends.lwjgl.LwjglGraphics.createDisplayPixelFormat(LwjglGraphics.java:197)
at com.badlogic.gdx.backends.lwjgl.LwjglGraphics.setupDisplay(LwjglGraphics.java:174)
at com.badlogic.gdx.backends.lwjgl.LwjglApplication.mainLoop(LwjglApplication.java:138)
at com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplication.java:120)
Это создает первое окно: 'LwjglApplicationConfiguration configForTiles = new LwjglApplicationConfiguration(); TilePresets tilesWindow = new TilePresets(); LwjglApplication tiles = new LwjglApplication (tilesWindow, configForTiles); ' И это второе ' LwjglApplicationConfiguration configForMap = new LwjglApplicationConfiguration(); MapMaker mapWindow = новый MapMaker(); LwjglApplication map = new LwjglApplication (mapWindow, configForMap); ' EDIT: DAMN это форматирование комментариев является напряженным. – WhoPlays
Проводка кода в комментариях слишком стрессовая из-за форматирования ._. Итак, я установил небольшой сайт as-basic-as-it-gets html на моем сервере с форматированием строки и журналом ошибок. http://whoplays.lima-city.de/code.html – WhoPlays
Просто отредактируйте исходный вопрос. – Tenfour04