SDL2 - 如何使用单独的 alpha 通道文件处理资产?

SDL2 - How to process assets with separate alpha channel file?

最近发现了一些老游戏的资源,以前的PNG图片没有alpha通道,资源必须提供另外一张灰度图,白色为不透明,黑色为全透明,灰色为半透明。

虽然使用 C++ 文件写入编辑它们可以完成工作,但考虑到所涉及的工作,这是最后的手段。

我想加载并处理它们成为渲染就绪的纹理,或者以某种方式在加载之前处理它们。纯 SDL 会很棒,因为我还没有准备好使用自己的渲染工具。但是,如果这不是 possible/very 不雅,那么任何像图像处理 library/software 这样的巧妙解决方法也很好。

我会考虑一个小的 python 帮助程序脚本,它将获取 PNG 并将它们与 alpha 结合起来并以您期望的格式导出它们。

这样一来,您就没有运行时开销或麻烦,并且文件在 photoshop 等程序中更容易编辑。

可能cv2可以用于图像处理: https://gist.github.com/garybradski/fabe4ce7ed5c042988b748780393370c