OpenGLプログラムでテキストを表示するにはどうすればよいですか? 私はMinGWを使用していますが、ウェブ上のチュートリアルでは、Windows開発に特有のライブラリ(パラメータとしてHDcを使用)が使用されています。MinGWを使用してWindowsでOpenGLにテキストを表示
答えて
OpenGLにはフォントレンダリングが組み込まれていません。ほとんどのプラットフォームでは、OpenGLディスプレイ(またはその周り)の上にテキストをレンダリングするためのプラットフォーム固有の呼び出しを呼び出すことができます。これは、おそらくそれらのチュートリアルが行っていることです。テキストをOpenGLシーンの一部にしたい場合は、自分自身をロールバックする必要があります。
一般的なアプローチは、既存のフォントレンダリングライブラリ(たとえばfreetype)を使用し、テキストをビットマップにレンダリングし、それをテクスチャとして使用することです。
多くのテキストをレンダリングする必要がある場合は、個々のグリフをテクスチャに変換する方が良い場合があります。 1つのグリフをレンダリングした後、1つのクワッドを使用します(通常の最適化を使用してレンダリングを高速化できます)。
TTF/OTFフォントの代わりに、事前レンダリングされたビットマップを使用することもできます。実行時にフォントレンダリングライブラリが不要になりますが、フォントサイズを動的に変更することはできません(ただし、テキストのインスタンスを伸ばしてももちろん可能です)。
別のオプション:libcairoは(実験的な)OpenGLバックエンドを持っているようですので、チェックアウトする価値があります。
あなたがalreydy答えを受け入れていることにもかかわらず、私はあなたを指すようにしたい:
http://www.angelcode.com/products/bmfont/
私は私のライブラリで生成されたフォントを使用して、統合することが本当に簡単であり、あなたが持っていませんあなたのアプリを別のライブラリに依存させる。解析するフォントとファイルでテクスチャを生成します。 次に、フォントを描画する前にテクスチャをopenglにバインドし、そのグリフのサブテクスチャ座標を持つすべてのグリフに対してクワッド(スプライト)を描画します。生成されたファイルからそれらを取得します。
は、ここに私の実装を参照してください。
http://code.google.com/p/nightlight2d/source/browse/trunk/NightLightDLL/NLFont.cpp
はそれを使用する自由を感じます。 ソースがあなたと一緒になることがあります。
- 1. MinGW-w64を使用してWindows用のLAPACKをコンパイルします。
- 2. MinGWでlibffiを使用してWindows APIを呼び出す
- 3. MinGWを使用してWindowsでwxWidgetsを構築する
- 4. MinGWを使用してWindowsでGLEW 1.7.0を構築する
- 5. OpenGL ES 2.0でテクスチャとしてテキストを表示
- 6. OpenGL、C言語を使ってテキストを表示して値を取得
- 7. D3.jsを使用してrectにテキストを表示する
- 8. javascriptを使用してマウスの画像上にテキストを表示
- 9. Windows XPでPythonを使用してタスクバーを非表示
- 10. GPSを使用してWindows Mobile 6でルートマップを表示
- 11. CMakeを使用してMinGWでWindows上でLLVM OCamlバインディングをビルドする?
- 12. MinGWでWindows APIを使用するには?
- 13. gnu cgi(cgicc)がMinGW/Cygwinを使用してWindowsでgccとコンパイルしない
- 14. WindowsでMinGwを使用してImageMagickライブラリをリンクする際の問題
- 15. コードを使用してUILabelテキストを表示
- 16. GLEWを使用してWindowsでOpenGL拡張機能を使用する
- 17. D3を使用してJavaScript変数をテキストとして表示するには
- 18. Windows 7でのC/C++アプリケーションのクロスコンパイル(LinuxでMinGWを使用)
- 19. MinGwまたはVisual Studiosを使用したWindows Qt?
- 20. OpenGL ESでテキストの表示に問題がありますか?
- 21. MinGWでinotifyを使用
- 22. MinGWでmsysGitを使用
- 23. Windows下でのOpenGLのテキスト位置
- 24. OpenGLを使用して画像を表示および選択する方法
- 25. DirectXまたはOpenGLを使用して100のフローティングキューブを表示する
- 26. トレーサを使ってアンドロイドデバッガでOpenGLを表示
- 27. HTML/CSS:テキストを非表示にして枠線を表示
- 28. android ndkでOPENGLを使用してフレーム(RGBデータ)を表示しているときにフレームレートが遅すぎる
- 29. OpenGL + GLEW + MinGWアプリケーションリンクの問題
- 30. MinGW、freeglut、glewを使用した単純な静的OpenGL 4.0プログラムのコンパイル