libGDX AssetManager funktioniert nicht

  • 4 Antworten
  • Letztes Antwortdatum
4

453202

Gast
Hallo, habe folgende Zeilen in meinem libGDX-Programm um einen Sound zu laden und abzuspielen:


Vor der libGDX create method:

AssetManager AssetManager_App;
Sound Sound_PolSir;


In der libGDX create method:

AssetManager_App=new Assetmanager();
Assetmanager_App.load("sounds/policesiren.ogg", Sound.class);
Assetmanager_App.finishLoading();
AssetManager_App.get("sounds/policesiren.ogg",Sound.class);
Sound_PolSir.loop();


Das Ergebnis ist, dass das Programm sich entweder gleich wieder beendet oder der Sound einfach nur nicht abgespielt wird.

Benutze ich stattdessen:

Sound_PolSir=Gdx.audio.newSound(Gdx.files.internal("sounds/policesiren.ogg"));

(und warte jetzt im Programm etwa 1 Sekunde)

dann wird der Sound sowohl erfolgreich geladen, als auch im Looping abgespielt.

Warum funktioniert der Assetmanager nicht?
 
Zuletzt bearbeitet von einem Moderator:
Hallo
Vom AssetManager brauchst und darfst du keine neue Instanz erstellen.
Du willst ja auf eine Datei in den assets zugreifen, in der Activity kannst du mit „getAssets()“ darauf zugreifen. Außerhalb brauchst du den Context der Activity.

AssetManager assetManager = getAssets();

Aber die Methode „load“ gibt es da nicht. Du musst „open“ benutzen und bekommst einen InputStream zurück.

android - Können Sie spielen eine mp3-Datei aus dem Ordner "assets"?
AssetManager | Android Developers
https://developer.android.com/reference/android/content/Context.html#getAssets()
 
Zuletzt bearbeitet:
Es geht um die AssetManager-Klasse des libGDX-Frameworks.
Außerdem habe ich es jetzt hinbekommen, man muss da nach der Methode AssetManager.finishLoading etwa eine halbe Sekunde Zeit verstreichen lassen, obwohl die Methode angeblich erst "zurückkehrt", wenn alle mit AssetManager.load in die Lade-Liste eingetragenen Assets auch geladen wurden. Wie gesagt, es geht um libGDX.
 
Ok mit libGdx arbeite ich nicht kann dir da nicht helfen.
 
Ja libGDX hat eine eigene AssetManager-Klasse.
Ich bin da auch nur am Anfang kurz in der Activity-Klasse, in der fast nur libGDX initialisiert wird.
 

Ähnliche Themen

AnnaBauer21
Antworten
0
Aufrufe
463
AnnaBauer21
AnnaBauer21
AnnaBauer21
Antworten
6
Aufrufe
920
AnnaBauer21
AnnaBauer21
Zurück
Oben Unten