Search code examples
javaandroidlibgdxassets

LibGDX AssetManager: Asset not loaded only on Android


When I try to load a file into the asset manager, LibGDX does not seem to pick it up. However, it works perfect on Windows!
I debugged the finishloading() method and It claims the parameter toLoad = 1 but it does not load.
On windows it would say loaded = 1 in the debugging screen.
Code sample:

ParticleEffectLoader.ParticleEffectLoadParameter loadParam = new ParticleEffectLoader.ParticleEffectLoadParameter(particleSystem.getBatches());
ParticleEffectLoader loader = new ParticleEffectLoader(new InternalFileHandleResolver());
Assets.instance.assetManager.setLoader(ParticleEffect.class, loader);
Assets.instance.assetManager.load("bb.pfx", ParticleEffect.class, loadParam);
Assets.instance.assetManager.finishLoading();

effect1=Assets.instance.assetManager.get("bb.pfx",ParticleEffect.class).copy();

The last line fails with a AssetNotLoaded on Android. Filenames are case sensitive, so that is not the error.

com.badlogic.gdx.utils.GdxRuntimeException: Asset not loaded: bb.pfx
                                                                      at com.badlogic.gdx.assets.AssetManager.get(AssetManager.java:144)
                                                                      at bvo.games.colorspace.settings.Assets$AssetBillboard.<init>(Assets.java:109)

Does anyone know a solution to this?


Solution

  • My Asset class was static, on Android this does give unexpected results, as Xoppa pointed out in his comment. Problem solved. :)