我正在用 Python 和 Pygame 编写游戏。为此,图形将采用旧视频游戏机(如 NES)的风格。因此,图形由具有 2 位(4 色)图像的单个图块集文件组成,我希望在加载这些图像时能够为这些图像分配任意 4 色调色板。
我想要做的是使用 8 位(256 色)调色板模式,将调色板分为 64 个子调色板,每个子调色板 4 种颜色。每次我从 2 位图形文件加载 16x16 图块时,我都想为其分配这些虚拟 4 色调色板之一。因此,在原始图块集文件中,调色板索引将为 0-3,因为它是 2 位索引文件。我想将此文件中的图块加载到内存中,并使用一个函数将调色板索引从 0-3 重新分配给我选择的任何调色板偏移量,这样当我将其传输到屏幕时,它就会以我选择的 4 色进行着色调色板——很像 NES 硬件的工作原理。解释起来有点麻烦,所以也许这张图能让它更清楚一些:
我浏览了 Pygame 和 PIL 的手册,没有找到任何可以让我像这样操作调色板文件的东西。是否还有其他库需要研究,或者是否有我没有看到的更简单的解决方案?
虽然我个人没有这样做,但在 PyGame 中我相信您正在搜索的调用是:http://pygame.org/docs/ref/surface.html#Surface.set_palette http://pygame.org/docs/ref/surface.html#Surface.set_palette
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)