2.3 KiB
2.3 KiB
拼图图片与前端规则裁决对齐 2026-04-29
背景
本轮明确调整拼图运行态边界:
- 拼图生成图片重新回到
1:1正方形。 - 拼图中的拖动、交换、合并、拆分与通关判定由前端即时计算。
- 移动端运行时棋盘需要贴近屏幕两侧边缘,减少无效留白。
此前误按 9:16 竖屏统一图片和棋盘,会让拼图块在移动端可操作面积不足,也和拼图素材的切块体验不匹配。本轮回到正方形棋盘与正方形生图。
落地结论
1. 图片生成
- 拼图生成图固定使用
1024*1024。 - 文生图和参考图生图共用同一个尺寸常量,禁止一条链路仍生成竖屏或横版图。
- 拼图图片提示词明确写入
1:1 正方形画布,继续保留3x3 或 4x4 拼图切块、主体清晰、层次明确、无文字水印等约束。 - 图片生成仍由
api-server执行。SpacetimeDB reducer 不做网络 I/O。
2. 前端规则裁决
- 运行态的交换、拖动、合并、拆分、通关判定由前端基于
PuzzleRunSnapshot即时计算。 - 正式 run 与本地测试 run 复用同一套前端规则函数,避免正式链路和测试链路玩法漂移。
- 后端仍负责开始 run、进入下一关、道具扣费、暂停计时同步、排行榜提交、作品与下一关候选读取。
- 正式 run 的
/drag后端 HTTP 接口已撤出 Rust API;拖动不再有后端入口。/swap暂作点击交换兼容入口,拖动中的交换由前端本地规则完成。
3. 移动端棋盘布局
- 运行时棋盘根容器恢复
aspect-square。 - 移动端横向 padding 收紧到
0.25rem,棋盘宽度使用min(99vw, 可用高度),尽量贴近屏幕两侧边缘。 - 单格不设置固定最小高度,避免移动端被单格撑破。
- 顶部 HUD 与底部道具仍保留安全区,不能遮挡棋盘可操作区域。
验收
- 点击拼图草稿生成或重新生成画面时,后端请求 DashScope 的
size为1024*1024。 - 图片提示词包含
1:1 正方形拼图关卡。 - 正式拼图 run 中拖动拼块后,前端立即更新棋盘、合并块和通关状态,不再等待
/drag。 - 移动端运行时棋盘为正方形,并尽量贴近屏幕两侧边缘。
- 下一关、道具、排行榜仍走现有后端链路,不把外部 I/O 或扣费逻辑塞回前端。