Skip to content

Repository files navigation

明日方舟奇象巡展游戏像素画工具

将任意图片转换成游戏内支持的 40 色、24x24 像素画,并通过鼠标自动填充游戏画盘。

视频使用教程

https://www.bilibili.com/video/BV1FYuV6hEBZ

功能

  • 图片导入和 24x24 实时预览
  • crop 裁切填满、contain 完整留白两种适配方式
  • 使用截图中提取的 10x4 游戏调色板做 Lab 色彩空间近似
  • 自动识别 24x24 画盘边界和当前可见色板
  • 自动跳过默认白色背景,按颜色分组填充非白色像素
  • 缓存画盘和色板位置,仅在色板滚动后重新识别一次
  • 换色时缓慢移动鼠标,并连续长按点击 3 次
  • 可选择在绘制时保持工具窗口原位置并置顶显示进度
  • Windows 可从下拉框选择具体游戏窗口,仅截图、识别和操作该窗口客户区
  • 每次检测都会在 debug/ 输出带画盘和色盘标记的截图
  • 支持从游戏自动读取全部 40 色并保存为 game_palette.json
  • 检测后弹出截图,可手动拖拽确认画盘和色盘区域
  • 绘制和取色只在人工确认的两个区域内识别与操作
  • 适配游戏窗口缩放、Windows 125%/150% 等 DPI 缩放
  • Windows 使用 PyAutoGUI 控制鼠标,支持左上角紧急停止
  • GUI 停止按钮及屏幕左上角紧急停止

Windows 安装与运行

可以在 PowerShell 中手动安装,建议使用 MiniConda 管理:

cd pixel_painter
py -3 -m venv .venv
.\.venv\Scripts\Activate.ps1
python -m pip install -r requirements.txt
python app.py

Windows 注意事项:

  • 建议把游戏放在主显示器,画盘和色板必须完整可见。
  • 点击“刷新窗口”,从下拉框选择游戏窗口;不选择时使用“全屏自动识别”。
  • 游戏和工具应使用相同权限级别。如果游戏以管理员身份运行,工具也需要右键选择“以管理员身份运行”。
  • 支持 100%/125%/150%/200% 系统 DPI 缩放,无需改为 100%;绘制过程中不要修改缩放比例、旋转屏幕或切换主显示器。
  • Windows 安全软件若拦截鼠标自动化,需要允许 Python 运行。

使用

  1. 点击“导入图片”,选择适配方式并检查预览。
  2. 点击“刷新窗口”,在“游戏窗口”下拉框中选择目标游戏。
  3. 保持游戏的完整画盘和色板可见,点击“检测游戏”。
  4. 在弹出的截图中检查建议框;点击“圈选画盘”或“圈选色盘”后拖拽重画。
  5. 红色画盘框应贴合 24×24 方格外边界,绿色色盘框应覆盖完整可滚动色盘,两个框不能重叠。
  6. 点击“确认区域”。工具会在 debug/ 额外保存人工确认后的标注图。
  7. 根据需要勾选“绘制时保持工具窗口当前位置并置顶显示进度”。
  8. 将工具窗口移到不遮挡画盘和色板的位置,再点击“确认并开始绘制”。
  9. 绘制期间不要移动或遮挡游戏窗口。需要紧急停止时,将鼠标移到屏幕左上角。

游戏取色

内置颜色与实际游戏不一致,或滑动后提示找不到颜色时:

  1. 选择正确的游戏窗口。
  2. 点击“检测游戏”,圈选并确认画盘和色盘区域。
  3. 手动把游戏色盘滑到最顶部,确保画盘和色盘完整可见。
  4. 点击“游戏取色”并确认。
  5. 工具读取顶部 6 行,自动在色盘区域向上滑动一次,再读取底部 6 行。
  6. 两次截图的重叠两行校验通过后,将 40 色按顺序写入 game_palette.json
  7. 重启工具,新调色板会自动用于图片量化、色盘识别和自动绘制。

删除 game_palette.json 并重启工具即可恢复内置调色板。

识别限制

  • 画盘四条边需要完整可见,且色板至少显示两行。
  • 开始绘制和游戏取色前,必须通过检测弹窗确认红色画盘框与绿色色盘框。
  • 画盘使用人工确认的红框,不再从整张截图重复猜测位置。
  • 色盘只会在人工确认的绿框裁剪区域内识别,滑动起点和终点也都限制在绿框内。
  • 开始绘制后会缓存画盘和色板位置;绘制过程中不要移动或缩放游戏窗口。
  • 保持窗口可见时,程序仅在截图识别瞬间短暂隐藏窗口,随后恢复原位置。
  • 选择具体窗口后,每次点击前都会校验窗口客户区;窗口移动、缩放或坐标越界时会立即停止。
  • Windows 当前从主显示器截图,游戏需要位于主显示器。
  • 当前默认逐像素点击,不使用画盘内拖动画线,以降低越格风险。

检测失败排查

  • 先确认色板至少完整显示两行,且没有被其他窗口遮挡。
  • 点击“检测游戏”前,将游戏放在主显示器并保持画盘四边完整可见。
  • 每次检测都会在 debug/ 生成 detection_时间戳.png
  • 蓝框表示实际截图范围,红框表示识别到的 24×24 画盘,绿框和绿色编号表示色盘及颜色索引。
  • 检测失败时也会保留截图,可用于检查 DPI、遮挡、画盘误识别或色板主题差异。

About

明日方舟奇象巡展游戏像素画工具,将任意图片转换成游戏内支持的 40 色、24x24 像素画,并通过鼠标自动填充游戏画盘。

Resources

Stars

8 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages