私はアセットマネージャを使用して自分のアセットをロードするだけで奇妙な問題を抱えています。私のassetManagerは、すべてを短く、よりきれいにするために作った別のクラスです。 My Assetクラスは静的ではありません。私はすべての資産を非静的なassetDescriptorにロードしました。Android Libgdx assetManager:アセットがロードされていません
表示中に私の資産をすべて読み込むスプラッシュ画面を読み込みます。私が他の画面を呼び出すと、私がロードした資産はロードされず、ゲームがクラッシュすることになります。スプラッシュ画面は読み込まれますが、新しい画面が割り当てられるとクラッシュします。
私はこの問題で2日間過ごしました。 15種類以上のバリエーションを試してみましょう。勝てない。
私のエラーメッセージは次のとおりです。
com.badlogic.gdx.utils.GdxRuntimeException: Asset not loaded: stuff.png
at com.badlogic.gdx.assets.AssetManager.get(AssetManager.java:144)
at com.badlogic.gdx.assets.AssetManager.get(AssetManager.java:167)
at com.nectar.pewdybird.mainMenu.<init>(mainMenu.java:71)
at com.nectar.pewdybird.pewdyBird.render(pewdyBird.java:68)
at com.badlogic.gdx.backends.android.AndroidGraphics.onDrawFrame(AndroidGraphics.java:459)
at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1523)
at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1240)
Splash.class:
public Assets assets;
public void create(){
assets = new Assets();
assets.load();
}
public void render(){
if(assets.update()) {
setScreen(new mainMenu(this));
dispose();
} else {
//Splash Screen
gl.glClearColor(0,0,0,1);
gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
batch.begin();
//Draws SplashScreen
batch.end();
}
}
public void dispose(){
this.screen.dispose();
this.batch.dispose();
}
mainMenu.class
public Assets assets;
private Texture Stuff;
public mainMenu(Splash game){
assets = game.assets;
Stuff = game.assets.manager.get(game.assets.stuff);
}
public AssetManager manager = new AssetManager(new InternalFileHandleResolver());
public final AssetDescriptor<Texture> stuff =
new AssetDescriptor<Texture>("stuff.png", Texture.class);
public void load(){
manager.load(stuff);
//12 More loads
manager.finishLoading();
}
public boolean update(){
return manager.update();
}
Asset.classは読んで、おそらく私多分簡単な問題にご協力いただきありがとうございます。
1.スプラッシュクラスは、画面を実装したり、ゲームクラスを拡張
Splash
クラスにパラメータ化コンストラクタを使用してmainMenu
のオブジェクトを作成しています。 ? 2.あなたはmainMenuのパラメータ化されたコンストラクタを使用しています、それはどこですか? – AryanSplash extends com.badlogic.gdx.game; とmainMenuはScreenを実装しています。メインメニュー 私はスプラッシュインプリメンテーション画面も作成する必要がありますか?私はちょうど私のスプラッシュで実際にgdx.gameを使用していないと思った。 – deathwillcome800