を使用する単純なOpenGL
アプリケーションを作成しています。自分自身のフォントレンダリングコードをロールしたくない代わりに、GLUT
と一緒に出荷される単純なビットマップフォントを使用したいと思います。それらを働かせるためのステップは何ですか?GLUTビットマップフォントを使用
19
A
答えて
27
GLUTビットマップフォントを使用したOpenGLでは、簡単なテキスト表示が簡単です。これらは単純な2Dフォントであり、ではないの中にはあなたの3D環境ではが適しています。ただし、表示ウィンドウにオーバーレイする必要があるテキストには最適です。
ここでGLUTウィンドウ上の緑に着色されたエリック・カートマンの好きな言葉を表示するには、サンプルの手順は次のとおりです。私たちは、スクリーン座標でのラスタ位置を設定することがあります
。したがって、2Dレンダリング用の投影とモデルビュー行列を設定します。
glMatrixMode(GL_PROJECTION);
glPushMatrix();
glLoadIdentity();
gluOrtho2D(0.0, WIN_WIDTH, 0.0, WIN_HEIGHT);
glMatrixMode(GL_MODELVIEW);
glPushMatrix();
glLoadIdentity();
フォントの色を設定します。
glColor3f(0.0, 1.0, 0.0); // Green
テキストを表示するウィンドウの場所を設定します。これは、スクリーン座標でラスタ位置を設定することによって行われます。ウィンドウの左下隅は(0、0)です。
glRasterPos2i(10, 10);
は、フォントを設定し、glutBitmapCharacterを使用して文字列の文字を表示します。
string s = "Respect mah authoritah!";
void * font = GLUT_BITMAP_9_BY_15;
for (string::iterator i = s.begin(); i != s.end(); ++i)
{
char c = *i;
glutBitmapCharacter(font, c);
}
マトリックスを元に戻します。
glMatrixMode(GL_MODELVIEW);
glPopMatrix();
glMatrixMode(GL_PROJECTION);
glPopMatrix();
関連する問題
- 1. LWUITビットマップフォント
- 2. LibGDXビットマップフォントのパフォーマンス
- 3. オブジェクトをglut表示関数に使用
- 4. ビットマップフォントのレンダリングとカーニング
- 5. ビットマップフォントを使用してテキストを表示および編集する
- 6. GLUTポップアップメニュー
- 7. カメラでビットマップフォントを移動するLibGDX
- 8. Visual C++ Express EditionでGLUTを使用する
- 9. GLUTを使用した未定義参照
- 10. GLUTの使用中にグローバル変数を避ける
- 11. glutPassiveMotionFunc()を使用しています。 GLUTで
- 12. オブジェクト指向プログラムでGLUTを使用する
- 13. OpenGLを使用したHaskell (Unknown GLUT entry glutInit)
- 14. glCreateShaderのGLUTセグメンテーションエラー
- 15. CのGLUTスクリーンキャプチャ
- 16. GLUTファンクションキーのリフレッシュ
- 17. GLUTプログラムのコンパイル
- 18. GLUTの問題
- 19. 手動エントリから5 * 7ビットマップフォント
- 20. OSX Sierraでforkした後のGLUTの使用
- 21. プラットフォームに依存するリンカーフラグbazel(glut用)
- 22. エラー 'glutTimerfunc' C Opengl glut
- 23. HaskellプログラムのGLUTエラー
- 24. Glut glLoadMatrixfカメラ相当
- 25. 機能的なGLUT?
- 26. GLUTウィンドウを更新する
- 27. ビスタにglutを使用するとアクセス違反エラーが発生する
- 28. Box2Dとglut。フレームレートの問題
- 29. モノデベロッパーとGLUTの問題
- 30. GLUT内の複数のオブジェクト
+1サウスパーク –
を見るために、私は3Dの世界座標におけるいくつかのオブジェクトを持っていると私は、ビューポート上の固定位置にオーバーレイテキストを表示する必要があります。私はこのアプローチを試みましたが、それは私に固定オーバーレイテキストを与えません。それどころか、カメラの動きに応じて回転するテキストを私に与えます。どのようにこれを動作させるのですか? – Papouh
@Papouh:それは変です。私が使用しているコールは2Dであるため、ウィンドウに表示されます。彼らは3Dで移動してはいけません。 –