libGDX AssetManager funktioniert nicht

CrazyC

CrazyC

Ambitioniertes Mitglied
2
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:
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

SaniMatthias
Antworten
19
Aufrufe
963
swa00
swa00
O
Antworten
15
Aufrufe
2.974
ORHUX
O
K
Antworten
3
Aufrufe
1.168
Kapikalaani
K
Zurück
Oben Unten