最近在 Unity 项目里导入一套资源,运行后发现图片边缘有明显白边。
检查资源后发现,手动勾选材质上的 Straight Alpha Texture和alpha is Transparency 后白边消失。
问题原因
这类白边通常是 Alpha 处理方式不一致导致的。
Spine 资源导出时常见两种 Alpha 格式:
- PMA / Premultiply Alpha
- Straight Alpha
如果贴图本身是 Straight Alpha,但 Unity/Spine 导入设置按 PMA 处理,就会在透明边缘采样到错误颜色,表现为白边、黑边或杂色边。
解决
找到spine 设置
会发现这个路径下有不止一个presets 改成另一个就可以了,然后资源重新导入