0

この問題をあちこち探しましたが、解決策が見つかりません。

これは私のレンダリングループです:

 Gdx.gl.glClearColor(0, 0, 0, 1);
 Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT);

 batch.begin();

 BitmapFont font = new BitmapFont(Gdx.files.internal("data/Media/font/myfont1.fnt"), false);
 font.setColor(new Color(1, 1, 1, 1));
 font.draw(batch, "Hello", 100, 100);

 batch.end();

フォントを生成するために、可能なすべての色、位置、およびさまざまなプログラムを試しました。しかし、結果は常に同じです。黒い画面です! (glClearColor が (1, 1, 1, 1) の場合、白い画面...) 何が問題なのか教えてもらえますか?

前もって感謝します!

編集:私は自分で問題を見つけました。カメラの設定がまずかった!

4

4 に答える 4

2

fntファイルとともにpngファイルをロードしていないようです

 font = new BitmapFont(Gdx.files.internal("data/billy.fnt"), Gdx.files.internal("data/billy.png"), false);

また、render メソッドで何もロードしないでください。コンストラクターでフォントをロードしてみてください。そうしないと、GC 呼び出しが発生し、最終的に fps が低下します。

于 2013-10-01T03:56:10.187 に答える
1

プロジェクトに .fnt がなくても、新しい BitmapFont を初期化できます。

BitmapFont font = new BitmapFont();

次に、それをレンダリングします。

batch.begin();
font.draw(batch, "Hello world", 200, 0);
batch.end();

Y 軸は下から始まることを忘れないでください。

于 2013-12-31T00:51:50.317 に答える
0
 font = new BitmapFont(Gdx.files.internal("data/billy.fnt"), Gdx.files.internal("data/billy.png"), false);

billy.fnt、billy_1.png、billy_2.png などのフォント画像がほとんどない場合は、次のように使用できます。

 font = new BitmapFont(Gdx.files.internal("data/billy.fnt"), false);
于 2013-10-01T13:50:43.120 に答える