资源规范最怕靠口头约定,AI 倒是很适合先帮你当那个不嫌烦的检查员

很多 Unity 项目里,资源规范一开始都写过。

比如:

  • UI 图不要开 Read/Write
  • Texture 格式按平台走
  • 非必要别开 mipmap
  • 命名要统一
  • 大图别乱进公用图集

文档通常不缺。

真正缺的是,谁来持续检查。

因为这类活又碎、又重复、又容易让人烦。

而越是这种活,AI 越适合先帮你把工具骨架铺起来。

一、资源规范问题为什么总是反复出现

不是因为大家不懂。

更多时候是因为:

  • 资源量大
  • 人员流动
  • 赶版本时容易手滑
  • 靠人眼审核很难持续

最后的结果往往就是,规范存在于文档里,问题存在于项目里。

这时候最务实的办法,不是再开一次规范宣讲会。

而是把高频规则尽量工具化。

二、AI 在资源规范场景里最适合的角色:规则翻译器

也就是把你脑子里那一套规则,翻成能跑的检查逻辑。

比如你已经很清楚项目想要的规则是:

  1. UI 目录下的贴图默认关闭 mipmap。
  2. 图标类资源宽高不能超过某个上限。
  3. 非透明贴图不要保留 alpha。
  4. 命名必须符合某个前缀规范。

这种时候让 AI 去补检查器,命中率通常不低。

前提是你把规则说清楚。

三、一个更靠谱的提示词例子

1
2
3
4
5
6
7
8
9
10
11
12
13
14
你是资深 Unity 资源工具链工程师。
请帮我写一个 Unity Editor 检查工具,用来扫描 UI 贴图资源是否符合导入规范。

项目规则:
1. 路径在 Assets/UI/ 下的 Texture2D 默认不能开启 mipmap。
2. UI 图默认不能开启 Read/Write。
3. 宽高超过 2048 的资源要报警。
4. 名字必须以 ui_ 开头。

要求:
1. 提供一个菜单入口。
2. 扫描结果输出到 Console。
3. 代码拆成扫描、规则判断、日志输出几个方法。
4. 先给代码,再说明如何扩展更多规则。

这种问法的关键是,你是在给 AI 一套明确项目规则,而不是让它凭空发明资源规范。

四、一个简化版资源规范扫描器例子

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
using UnityEditor;
using UnityEngine;

public static class UiTextureRuleScanner
{
[MenuItem("Tools/Assets/Scan UI Texture Rules")]
public static void Scan()
{
var guids = AssetDatabase.FindAssets("t:Texture2D", new[] { "Assets/UI" });

foreach (var guid in guids)
{
var path = AssetDatabase.GUIDToAssetPath(guid);
var importer = AssetImporter.GetAtPath(path) as TextureImporter;

if (importer == null)
{
continue;
}

ValidateName(path);
ValidateImporter(path, importer);
}
}

private static void ValidateName(string path)
{
var fileName = System.IO.Path.GetFileNameWithoutExtension(path);
if (!fileName.StartsWith("ui_"))
{
Debug.LogWarning($"[UI Rule] Invalid name: {path}");
}
}

private static void ValidateImporter(string path, TextureImporter importer)
{
if (importer.mipmapEnabled)
{
Debug.LogWarning($"[UI Rule] Mipmap should be disabled: {path}");
}

if (importer.isReadable)
{
Debug.LogWarning($"[UI Rule] Read/Write should be disabled: {path}");
}

var texture = AssetDatabase.LoadAssetAtPath<Texture2D>(path);
if (texture != null && (texture.width > 2048 || texture.height > 2048))
{
Debug.LogWarning($"[UI Rule] Texture too large: {path} ({texture.width}x{texture.height})");
}
}
}

这类工具不是什么黑科技。

但很容易从“大家都知道要检查”变成“没人真想手工查”。

所以让 AI 先把骨架搭出来,性价比很高。

五、第二轮提示词,适合让 AI 补“项目特有规则”

我会继续这样问:

1
2
3
4
5
6
请继续扩展刚才的 Unity 资源规范检查工具。
再补这些规则:
1. 某些目录必须使用指定平台压缩格式。
2. SpriteAtlas 依赖要额外报警。
3. 结果不要只打 Console,请输出一个可复制的汇总文本。
4. 只输出新增函数和需要替换的函数。

这种追问很有用。

因为项目里的资源规范,真正值钱的部分往往不是通用规则,而是你们团队自己的历史坑。

六、最后一句

资源规范最难的从来不是写出来,而是持续执行。

而这种重复、机械、容易拖延的检查工作,正好是 AI 很适合先帮你推一把的地方。

它当然不能代替最终判断。

但用来把规范翻成可执行检查器,已经很值了。