Skip to content

feat(pixel-perfect): use project sprite size as the shared target grid #589

Description

@huyanxius

Background

当前像素风生成链路缺少一份由项目定义、并由生图与后处理共同使用的目标网格约束:

  1. 生图模型没有拿到项目要求的目标 Sprite 尺寸,生成图片的像素网格由模型的隐式行为决定。
  2. Pixel-perfect 后处理也拿不到原始目标尺寸,只能从生成图片中猜测像素网格,无法保证结果符合游戏项目的规格。

例如项目需要原生 32×32 Sprite,模型可能生成 1024×1024 图片并形成其他隐含网格。后处理即使恢复出规则网格,也可能得到不符合项目要求的尺寸。

Goal

将项目已有的 sprite_width × sprite_height 作为共享的目标 Sprite 网格,同时传入像素风图片生成和 pixel-perfect 后处理。

生图阶段尽量按照项目目标网格控制像素密度和细节规模;后处理阶段严格按照同一目标网格完成重建,不再通过生成图片猜测最终网格数。

Scope

  • 将项目目标 Sprite 尺寸传入像素风图片生成约束。
  • 将同一目标尺寸显式传入 pixel-perfect 后处理。
  • 后处理的最终网格尺寸只由项目约束决定,检测结果不得改变最终规格。
  • 处理结果沿用现有生成与素材存储链路。
  • 非像素风格生成行为保持不变。

Acceptance criteria

  • 像素风生图阶段能够获取项目目标 Sprite 尺寸。
  • Pixel-perfect 后处理能够获取同一份目标尺寸。
  • 改变生成图片的分辨率或隐含像素网格,不会改变后处理的最终目标网格。
  • 项目要求 32×32 时,最终生成并存储原生 32×32 的 pixel-perfect Sprite。
  • 非像素风格生成路径保持现有行为。

Out of scope

  • 从没有项目约束的外部图片中推断目标尺寸。
  • 更换、训练或微调图片生成模型。
  • 独立 pixel-perfect 工具、WASM 或独立工具 HTTP API。

Related

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions