我试图将字体字形图像打包成一个单一的纹理。位图是每个像素1个字节的单色,我希望将它们全部打包到一个纹理上。我能够计算出所需的最小纹理大小,但我无法管理一个算法来将它们打包在一起。
我目前已经将位图存储为字符指针,并且我能够获得每个位图的尺寸。
发布于 2011-07-13 14:15:17
我不是装箱方面的专家,但这里有一个简单的算法,你可以试试。
这就是众所周知的Next-Fit Decreasing Height (NFDH)算法。可以在here上看到一个交互式演示。
由于你们的字形高度大致相同,我认为这个简单的算法应该会给你带来很好的结果。
有关更多算法,请查看此survey。
发布于 2012-04-27 02:50:22
简单的打包算法可以在这里找到:http://www.blackpawn.com/texts/lightmaps/
在Jukka Jylänki的论文“打包垃圾桶的一千种方法”中,它被称为“断头台包”。
blackpawn.com的伪代码非常简单。
对于类似的问题也有相关的答案:Piece together several images into one big image
https://stackoverflow.com/questions/6674521
复制相似问题