1

フォントグリフ画像を単一のテクスチャにパックしようとしています。ビットマップは1ピクセルあたり1バイトの単色であり、すべてを1つのテクスチャにまとめたいと思います。必要な最小テクスチャサイズを計算することはできますが、それらをすべてまとめるアルゴリズムを管理することはできません。

現在、ビットマップをcharポインターとして保存しており、それぞれのサイズを取得できます。

4

2 に答える 2

2

私はビンパッキングの専門家ではありませんが、試してみることができる簡単なアルゴリズムを次に示します。

  1. グリフを高いものから短いものの順に並べます。最も高いグリフが最初に配置されます。
  2. H を次に高い未配置グリフの高さとします。
  3. 高さ H のレベルを追加して、テクスチャを垂直方向に拡張します。
  4. 次のグリフ用のスペースがなくなるまで、レベルを残りのグリフ (最も高いものから最も短いもの) で埋めます。
  5. 後藤#2

これは、Next-Fit Decreasing Height (NFDH)アルゴリズムとして知られています。インタラクティブなデモは、ここで見ることができます。

あなたのグリフは多かれ少なかれ同じ高さなので、この単純なアルゴリズムで良い結果が得られるはずです。

その他のアルゴリズムについては、このアンケートをご覧ください。

于 2011-07-13T06:15:17.157 に答える
1

簡単なパッキング アルゴリズムは次の場所にあります: http://www.blackpawn.com/texts/lightmaps/

Jukka Jylänki の論文「A Thousand Ways To Pack the Bin」では「ギロチン パック」と呼ばれています。

blackpawn.com の疑似コードは実にシンプルです。

同様の質問に対する関連する回答もあります。 複数の画像を 1 つの大きな画像につなぎ合わせます。

于 2012-04-26T18:50:22.240 に答える