AI 生成了假透明棋盘格怎么办?游戏素材透明图这样抠
文章目录
在游戏制作的过程中,特效、动画、UI 等大量图像素材,都必须是背景透明的,这样才能在视觉系统中进行叠加使用。
AI 加入到游戏制作流程之后,我们也希望 AI 能生成透明素材。
但比较遗憾的是,并非所有 AI 模型都支持生成透明图。甚至当下最顶级的两个图像模型 gpt-image-2 和 Nano Banana 2/Pro,都不支持透明图。
很多时候,我们在提示词里要求 AI 生成透明图,AI 会给出一张带有棋盘格背景的「伪」透明图。
如何解决 AI 生成背景透明图的问题?本文就来说一说。
AI 生图大模型的背景透明支持情况
gpt-image-2(不支持)
这是目前最强的生图模型。但官方文档中,明确说不支持透明:
https://developers.openai.com/api/docs/guides/image-generation gpt-image-2 doesn’t currently support transparent backgrounds. Requests with background: "transparent" aren’t supported for this model.
![]()
Nano Banana 系列(不支持)
这些模型均不支持生成透明图。官方 API 中也没有关于透明的参数。
- Gemini 3.1 Flash Image (Nano Banana 2)
- Gemini 3.1 Flash Lite Image (Nano Banana Lite)
- Gemini 3 Pro Image (Nano Banana Pro)
- Gemini 2.5 Flash Image (Nano Banana)
支持生成背景透明图的大模型
以下 OpenAI 系列的模型,支持直接生成透明图。比较遗憾的是,这些都不是目前最新最好的模型。当然,它们也更便宜。
如果只是出电商领域这类要求不高的图,这些模型完全可以胜任。
- sora-image
- gpt-4o-image
- gpt-image-1.5
抠图与 Alpha Matting
可惜我们这群做游戏的,虽然大多数经常没钱,但又总想用更好的。
既然最好的模型生成不了透明图,那就抠它!
来源:https://github.com/plemeri/transparent-background
抠图在日常应用中已经非常成熟了,无论针对图像还是针对视频,甚至是实时视频(视频通话过程中换背景),都有非常成熟的解决方案。
但在抠图的时候,也面临两种选择:主体抠图和关键色/纯色抠图。
关键色的选择
先说关键色抠图。
我在 从一张图到 SpriteSheet:AI 自动生成 2D 精灵动画实操 一文中提到过,早在电影工业早期,就已经稳定使用关键色进行抠图了:
在实拍摄影棚中,一般使用
#00B140这个色值,因为纯绿#00FF00在强光下容易过曝。但对 AI 生成视频来说不存在灯光问题,所以使用#00FF00即可。
类型 标准色值 说明 绿幕(推荐) #00FF00 或 chroma green background 影视行业标准,布景中极少纯绿 蓝幕 #0000FF 或 chroma blue background 传统影视,绿色冲突可用蓝色 不建议使用白幕布(白色背景)或黑幕布。前者容易混淆高光区,后者容易混淆物体的暗部。
昨天也有群友建议用 #FF00FF 这类行业常用的洋红色(Magenta):
但我仍然建议用绿幕。
为什么要用绿幕
绿幕是电影行业和后期特效最常见的选择,主要由 人类的生理特征 和 数字摄像机硬件底层原理 共同决定。
- 与人类肤色的对比度最大(人类肤色中几乎不含绿色)。
- 数字传感器对绿色最敏感。拜耳阵列 中红、绿、蓝像素的物理分布比例是 1:2:1。传感器上 50% 的感光点是用来接收绿光的,而红色和蓝色各仅占 25%。因此,摄像机记录下来的绿色通道数据量最大、细节最丰富。在进行复杂的发丝级边缘抠像时,绿幕能提供最平滑、最干净的遮罩。
- 绿色的明度非常高,在相同灯光功率下,绿幕比蓝幕要亮。
在计算机视觉领域,虽然不用考虑灯光功率,但必须考虑原因 1:绝大多数情况下,人类总是画面的主角。
还有一个重要的原因:由于绿幕的通用性,许多高级的抠图模型,**是使用绿幕作为训练资源的。**这就导致画面必须是绿幕,才能让这些模型发挥出最好的效果。
关键色抠图的效果
使用关键色抠图,配合 HSV 范围 + 边缘采样 + 高斯模糊 + 绿边 despill 算法,在边缘明确的情况下,已经能做到比较满意的效果了:
即使生成的是「伪」透明的那种棋盘格背景,关键色算法经过适当的调试,也能做到不错的效果。
主体抠图
但对于白色背景这类图,采用关键色就有些力不从心。
以下图为例,由于背景是白色,与白色类似的高光部分也会被抠图算法一并去除,导致漏光。对于发丝之间的镂空,也无法有效处理。
这种情况下,就要使用主体抠图算法。对于有明确主体的图像,模型会自动识别主体边缘,进行抠图。
比如下面这张 千手关公 三手苏野,就是采用了主体抠图模式。
我不得不吐槽一下某模型的能力了,这可是我们游戏女主!脸给生变了不说,手的数量也能搞错!
为了展现出关公刀上的高亮部位,背景采用的是绿幕而非棋盘格叠底。
半透明边缘抠图
130 元 vs 万元外包:我用 AI 一天做完 18 个游戏动画 这篇文章完成后,群里的网友讨论了关于抠图的半透明支持问题。
对于半透明的支持,尤其是对于高光部分的支持,是使用视频制作动画特效的基础。
有了半透明抠图效果的支撑,在逐帧动画中制作出完美的特效,就变成了一个简单的提示词工程:只需要调整好提示词,生成足够稳定的视频,就能批量抠图,得到可用的逐帧动画。
上图中的怪物喷吐火焰的效果,在抠图测试时固化好参数,批量抽帧就能得到合理结果。
火焰和毒液都能处理,对于发丝这种处理就更简单:
工具列表
虎澈 AI 团队的游戏素材工具内测中,希望试用可联系曾老师。
也可以将下面的工具集成进入自己的工作流或者 Skill 中,为自己的游戏开发提供帮助。
- 文章ID:2881
- 原文作者:zrong(Jacky)
- 原文链接:https://blog.zengrong.net/post/ai-transparent-background-image-game-dev/
- 版权声明:本作品采用 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 进行许可,非商业转载请注明出处(原文作者,原文链接),商业转载请联系作者获得授权。