問題タブ [sdl-ttf]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - SDL_ttf が正しく動作しない
私はSDL_ttfを使用していますが、mingw32では、すべてをダウンロードして次のプログラムを試します
int main(int argc, char* argv[]) { init(); 走る(); }
わかりましたので、ここにすべてのコードを投稿します。フォントファイルも現在のフォルダーにコピーしますが、効果がなく、エラーや警告も表示されません。これをmingw32で次のコマンドでコンパイルします
lSDL SDL_ttf.lib -mwindows -O3 -w -static
sdl - sdl_ttf を使用してベタのテキストを描画するには?
次に例を示します。
その例のおかげで、白い文字で黒い四角形を描画します。黒い四角形全体なしで、内側に黒い白い文字だけを描くことは可能ですか?
c++ - SDL_ttfの奇妙なクラッシュの問題SDL_OpenGL
私のゲームでは、「時間」がアクティブな場合、5「時間」後に常にクラッシュします。実行中は、(理由は不明ですが)誤った時刻が表示され始めるまで正常に動作し、セグメンテーション違反のために5"時間"後にクラッシュします。これまでにそのようなことはなく、同じことを何度も繰り返すことになっているので、それは奇妙です。これは私のコードです。時間の経過とともにメモリリークが発生する可能性がある場所があるかどうかを教えてください。ところで、「time_tick()」は「while」ループごとに発生します。
c++ - SDL TTF ライブラリのメモリ リーク (フレームごとにサーフェスを作成および解放する)
作成中のゲーム用に基本的な SDL+OpenGL レベル エディタを作成していますが、動的な TTF サーフェスを作成してから OpenGL テクスチャに変換するときに、かなり深刻なメモリ リークが発生します。
例えば:
フレームごとに、次のようなコードを実行します。
ただし、valgrind を使用すると、比較的大きなメモリ リークが多数発生することがわかります。アクティビティ モニター (Mac) でプログラムを監視すると、メモリ使用量が 500 MB 近くまで上昇する可能性があり、おそらくそこから継続する可能性があります。
valgrind エラーは次のとおりです。
大量のメモリを使用せずに TTF をフレームごとに動作させる方法についてのアイデアはありますか?
編集:将来の参考のために、私はばかです。私はこれをするのを忘れました:
opengl - 単一のフォント テクスチャを使用したテキストのレンダリング (SDL + OpenGL)
OpenGL でテキストをレンダリングし、そのテクスチャを SDL でロードする新しい方法を探してテストしてきましたが、テストするすべての技術は高価で遅いようです。
考えてみると、おそらくそれを実装する最善の方法は、必要なすべての文字 (スプライトシートのように) をテクスチャにロードし、それに関する関連データ (幅、高さ、進行、行スキップ...) を取得することであることに気付きました。それをレンダリングする (基本的に、シーンで他のすべてのレンダリングを行った後に行う) 場合、画面に必要なすべての文字列を出力するために必要な glBindTexture() は 1 つだけです。
ここでは、高価な部分はテクスチャの作成とバインディングだと思いますよね? 私がテストしたすべてのコードは、各グリフまたは各文字列に個別のテクスチャを使用しているようです。
皆さんはどのようにテキストをレンダリングしますか? それをレンダリングするのは良い方法ですか?もしそうなら、すでにそれを行っているライブラリはありますか?
oop - 引数を必要とする基本コンストラクターまで連鎖できません
それが私のコードです。ビルドしようとすると、次のようになります。
コンストラクターをオーバーライドする必要があると思ったので、それを試みましpublic override
たが、次のようになりました。
これを修正する方法についてのアイデアはありますか? SDLTTF.Font クラスを継承しようとしています。
c++ - SDL_ttf と OpenGL を使用して、TTF_RenderUTF8_Blended print 赤い四角形を出力します
を使用してテキストをレンダリングするTTF_RenderUTF8_Blended
と、画面上に塗りつぶされた長方形が表示されます。色は選択した色によって異なります。私の場合、長方形は赤です。
私の質問
私は何が欠けていますか?で生成されたサーフェスから適切なアルファ値を取得していないようですが、SDL_DisplayFormatAlpha(TTF_RenderUTF8_Blended( ... ))
そうですか? 誰かが問題を認識または知っていますか?
追加情報
私が使用するTTF_RenderUTF8_Solid
かTTF_RenderUTF8_Shaded
、テキストが適切に描画されている場合、もちろんブレンドされていません。
画面に他のテクスチャも描画しているので、テキストを最後に描画して、ブレンディングで現在のサーフェスが考慮されるようにします。
編集:SDL_Color g_textColor = {255, 0, 0, 0};
<-- アルファ値の有無にかかわらず試してみましたが、同じ結果が得られました。
あまり詳細を削除せずにコードを要約しようとしました。「g_」で始まる変数はグローバルです。
Init() 関数
DrawText() 関数
fonts - SDLTTFで一部のフォントに省略記号が表示されない
一部のフォントでは、Geditが存在することがわかっている場合でも、SDL_TTFで一部のグリフ(…など)をレンダリングできません(たとえば、geditで同じフォントを使用すると、正常に機能します)。
Makefile:
例(test.c):
c++ - Windowsデスクトップ用のVisual Studio Express 2012にSDL_ttfをインストールしようとしています
Windows デスクトップ用の Visual Studio Express 2012 に SDL_ttf をインストールしようとしていますが、問題なくコンパイルできる小さなサンプル プログラムがありますが、それを実行すると、「アプリケーションを正しく起動できませんでした (0xc000007b)」というエラー ポップアップが表示されます。 [OK] をクリックしてアプリケーションを閉じます。」
私はもともと基本的な SDL を動作させた後、SDL フォントを追加しようとしました。私は次のことを行いましたが、まだ問題が発生しています。誰かが私を助けてくれれば、それは大歓迎です...
1) すべての .lib フォルダーを Visual Studio lib フォルダー (C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\lib) (SDL.lib、SDLMain.lib、SDL_ttf.lib) にコピーしました。
2) SDL と SDL_ttf のインクルード ディレクトリをプロジェクト プロパティに追加しました (プロジェクト >> プロパティ >> 構成プロパティ >> VC++ ディレクトリ >> インクルード ディレクトリの下) ... これらは ("...\SDL Main Libraries\SDL -1.2.15\include") および ("...\SDL Font Libraries\SDL_ttf-2.0.11\include")
3) SDL と SDL_ttf の追加の依存関係を追加しました ([プロジェクト] >> [プロパティ] >> [構成プロパティ] >> [リンカー] >> [入力] >> [追加の依存関係] の下に、SDL.lib SDLMain.lib SDL_ttf.lib インライン - 次のように配置します)。これ: SDL.lib;SDLMain.lib;SDL_ttf.lib;%(AdditionalDependencies)
4) 次の dll ファイルを .exe ファイルと同じフォルダー (Visual Studio 2012\Projects\ConsoleApplication2\Debug) に配置しました。これらの dll ファイルは次のとおりです。 SDL_image.dll libfreetype-6.dll SDL_ttf.dll zlib1. dll SDL.dll
そして、これは私の小さなサンプル プログラムのソース コードです。
python - pygame.fontをインポートできません
私のOSはOSX10.8(mountain lion)で、python2.7.3を使用しています。pygameのインストールに成功したと思いました。残念ながら、私は間違っていました。pygameをインポートできますが、pygame.fontをインポートすると問題が発生します
フレームワークSDL_ttfの問題だと思いますが、このフレームワークは正常にインストールされたと思います。この指示に従ってpygameをインストールしましたが、これは実行した結果ですsudo python config.py
pygame.fontをインポートするにはどうすればよいですか?