1

パーティクル エフェクトのファイルを読み込もうとすると、NullPointerException が発生します。

particleEffect = new ParticleEffect();
particleEffect.load(Gdx.files.internal("hdpi/particles/progressbar"), Gdx.files.internal("hdpi/particles"));

そして、ここにスタックトレースがあります:

Exception in thread "Timer-0" java.lang.NullPointerException
at org.lwjgl.opengl.GL11.glGenTextures(GL11.java:1372)
at com.badlogic.gdx.backends.lwjgl.LwjglGL10.glGenTextures(LwjglGL10.java:240)
at com.badlogic.gdx.graphics.Texture.createGLHandle(Texture.java:166)
at com.badlogic.gdx.graphics.Texture.create(Texture.java:158)
at com.badlogic.gdx.graphics.Texture.<init>(Texture.java:133)
at com.badlogic.gdx.graphics.Texture.<init>(Texture.java:126)
at com.badlogic.gdx.graphics.g2d.ParticleEffect.loadTexture(ParticleEffect.java:198)
at com.badlogic.gdx.graphics.g2d.ParticleEffect.loadEmitterImages(ParticleEffect.java:193)
at com.badlogic.gdx.graphics.g2d.ParticleEffect.load(ParticleEffect.java:141)
at com.yyy.xxx.Screens.GameScreen.<init>(GameScreen.java:38)
at com.yyy.xxx.MyScreen$3.getScreenInstance(MyScreen.java:27)
at com.yyy.xxx.ScreenManager.show(ScreenManager.java:33)
at com.yyy.xxx.ScreenChangeTask.run(ScreenChangeTask.java:15)
at java.util.TimerThread.mainLoop(Unknown Source)
at java.util.TimerThread.run(Unknown Source)

なぜ何か提案はありますか?

アップデート:

Androidで実行しようとしましたが、動作しますが、次のような結果が得られます:
ここに画像の説明を入力

しかし、電話の画面をオフにしてから再びオンにすると、次のようになります。
ここに画像の説明を入力

この更新は最初のコメントに返信されると思います。

1) デスクトップの問題が解決されていない 2) アプリの起動時にパーティクル イメージが正しく表示されないという新しい問題...

4

1 に答える 1

1

私はこのコードを持っていました

particleEffect = new ParticleEffect();
particleEffect.load(Gdx.files.
                    internal("hdpi/particles/progressbar.p"), 
                    Gdx.files.internal("hdpi/particles/"));

パブリック クラス GameScreen のコンストラクターで、Screen を実装します。このコードをその場所に移動し、すべてのアセットがアプリに一度読み込まれます。これにより、両方の問題が解決されました。現在、デスクトップで動作しており、パーティクルのレンダリングが悪いという問題はありません。

于 2013-03-14T09:48:01.587 に答える