Skip to content

精灵图规范 (Sprite Specification)

本规范详细定义了 AI 世界模拟器项目中所有精灵图(Sprite)的尺寸、格式、内容和处理要求,旨在确保所有视觉资产在前端 PixiJS 渲染时能够正确显示,并符合整体美术风格。

1. 通用规范

  • 文件格式:所有精灵图必须为 PNG 格式,支持 Alpha 透明通道。
  • 背景:所有精灵图必须具有透明背景。在素材处理阶段,应确保背景完全透明,无半透明像素残留。
  • 像素完美:所有精灵图应保持像素完美,无抗锯齿 (anti-aliasing) 或模糊 (blur) 效果。
  • 尺寸单位:所有尺寸均以像素 (px) 为单位。
  • 命名规范
    • 单张精灵图{id}.png (例如 house_a.png, npc_programmer_walk_down_01.png)
    • 图集{category}.png (例如 residential.png, npc_programmer_walk.png)
    • 图集 JSON{category}.json (例如 residential.json, npc_programmer_walk.json)

2. 精灵图类型与详细规范

2.1 地形瓦片 (Terrain Tiles)

  • 尺寸32x32 像素。
  • 内容:草地、泥土、石地、沙地、水域等基础地形元素。
  • 特点:必须能够无缝拼接,支持自动瓦片 (Autotile) 变体。
  • 季节化:支持多季节变体,例如 grass_spring.png, grass_winter.png
  • 锚点:通常为 (0, 0) (左上角)。

2.2 建筑精灵 (Building Sprites)

  • 尺寸
    • 小型建筑 (如房屋):64x96 像素 (宽x高)
    • 中型建筑 (如商店、酒馆):96x128 像素 (宽x高)
    • 大型建筑 (如广场、市场):128x128 像素 (宽x高)
    • 注意:这些是最终处理后的画布尺寸,AI 生成的原始图会更大,需要经过裁剪和缩放。
  • 内容:各种住宅、商业、公共、工业建筑。
  • 透视:2.5D 俯视角。
  • 阴影:建筑底部应包含像素化的阴影,与建筑主体融合,增强立体感。
  • 锚点 (0.5, 1) (底部中心)。这意味着精灵的 (x, y) 坐标将对应其底部中心的像素点。在素材处理时,应确保建筑的视觉底部(例如大门底部或地基边缘)与图片的底部边缘对齐,以便锚点计算准确。
  • 季节化:建筑主体不进行季节化变体,通过 PixiJS ColorMatrixFilter 进行色调调整。冬季可能需要单独的雪顶叠加层。

2.3 角色精灵 (Character Sprites)

  • 尺寸32x48 像素 (宽x高)。
  • 内容:NPC 和玩家角色,包含不同职业、性别、外观等。
  • 动画:每个角色应包含至少 4 个方向 (上、下、左、右) 的行走动画,每个方向至少 8 帧。
  • 锚点 (0.5, 1) (底部中心)。
  • 图集结构:每个角色的每个动作方向可以打包成一个独立的 JSON 图集,例如 npc_programmer_walk.json

2.4 装饰物精灵 (Decoration Sprites)

  • 尺寸:根据实际物体大小而定,例如树木 32x48,灌木 32x32,花朵 16x16
  • 内容:树木、灌木、花卉、路灯、围栏、石头等。
  • 透视:2.5D 俯视角。
  • 阴影:应包含像素化的阴影。
  • 锚点:通常为 (0.5, 1) (底部中心),对于地面装饰物可能为 (0.5, 0.5) (中心)。
  • 季节化:自然类装饰物(如树木、花卉)应支持多季节变体。

2.5 UI 图标 (UI Icons)

  • 尺寸16x1624x24 像素。
  • 内容:各种界面图标,如职业图标、状态图标、操作按钮图标等。
  • 背景:透明背景。
  • 锚点(0.5, 0.5) (中心)。

3. 素材处理要求

所有 AI 生成的原始图像在导入前端之前,必须经过 scripts/process_assets.py 脚本的严格处理,以确保符合上述规范:

  1. 背景透明化:使用图像处理库(如 Pillow, OpenCV)进行背景移除,确保 Alpha 通道干净。
  2. 内容裁剪:自动检测图像中的非透明区域,裁剪掉多余的透明边距。
  3. 等比缩放:将裁剪后的图像等比缩放到目标尺寸。如果原始图像宽高比与目标尺寸不符,应在保持比例的前提下进行缩放,并填充透明区域或进行居中裁剪。
  4. 像素边缘处理:对 Alpha 通道进行二值化处理,消除半透明像素,确保像素边缘清晰。
  5. 输出校验:脚本应能校验处理后的精灵图是否符合尺寸、透明度等规范。

作者:Manus AI 日期:2026年7月10日

Released under the MIT License.