ゲームを作成していますが、問題が 1 つあります。プレイヤーが何かを拾ったり怪我をしたりするたびに何かを印刷したいので、画面にテキストを描画するにはどうすればよいですか。Graphics の drawString() 関数は既に知っていますが、OpenGL を使用している場合にそれで問題ないかどうかはわかりません。テキストを画面に簡単に出力できる OpenGL のメソッドはありますか?
2 に答える
OpenGL には、テキストを画面にレンダリングするために呼び出すことができる関数/メソッドはありません。
2 つの選択肢があります。1) ライブラリを使用する。または 2) 独自のロールを作成して、テキストをディスプレイにレンダリングするための独自の呼び出しを作成します。
1) テキストをディスプレイにレンダリングするために使用できるさまざまなライブラリが多数あります。ただし、最も明白でアクセスしやすいのは GLUT 内です。使用できる呼び出しは 2 つあります。
glutBitmapString() and glutStrokeString()
これらの最初のものは、2D の方法と呼ばれる可能性があると思われる方法でテキストをディスプレイにレンダリングします (ディスプレイの右側に貼り付けられているように見えます)。後者は 3D テキストを表示します。
参照できます
http://freeglut.sourceforge.net/docs/api.php
API リファレンス用。
2) 標準の OpenGL 関数を使用してキャラクター テクスチャをディスプレイにレンダリングする関数/メソッドを作成するか、glDrawPixels() の呼び出しを使用してステンシル バッファーを使用してキャラクターを生成する可能性があります。
私はこれらを試していません: 私は頭のてっぺんから考えているだけなので、走行距離は異なる場合があります. 幸運を。
いいえ、OpenGLにはテキストを簡単に印刷する方法はありません。この目的のために存在するライブラリの1つを使用するか、自分で作成する必要があります。