挖沙引水AI · Claude 3.5
游戏信息
生成提示词
核心玩法循环与机制
Dig & Fill: Water Truck Puzzle 是一款超休闲物理益智游戏,玩家用单指在可变形的沙土中挖掘隧道,为逼真的液体开辟通路,让水从屏幕顶部的蓄水池流入底部的水罐车。
逐帧玩法
- 关卡开始:玩家看到一块竖向的解谜面板,顶部是蓄水池,中部是可挖掘的沙土(内嵌星星和障碍物),底部是一辆空的水罐车
- 挖掘阶段:玩家用手指划过沙土,挖出平滑的隧道,为水流开辟通路
- 放水:水会遵循逼真的物理规律从蓄水池自动流下——重力、汇聚、分流、合流
- 收集:水流经挖好的隧道,沿途收集星星,并产生令人满足的粒子效果
- 注水:水抵达底部的水罐并开始注水,视觉注水量表显示进度
- 完成:一旦水罐达到所需的注满百分比,关卡即以庆祝特效完成
吸引力所在
- 即时满足:每一次划动都会立即挖开沙土并产生令人满足的粒子效果
- 物理快感:看着逼真的水流穿过你亲手挖出的隧道,带来极大的成就感
- 策略深度:玩家必须规划隧道路线以收集所有星星,同时确保足够的水抵达水罐车
- 视觉精致度:每个动作都会触发多汁的特效——闪光、飞溅、辉光和庆祝
- 递进挑战:关卡循序渐进地引入新机制(障碍物、多个水源、可动元素)
胜利条件
- 将水罐注满至所需百分比(通常为 80-100%)
- 星级评定依据:收集的星星数(0-3)和用水效率
失败条件
- 水流失(流出屏幕或流入死角积水口)
- 抵达水罐的水量不足以满足最低注满要求
- 玩家可通过快捷重开按钮即时重试
起步范围
第一版应专注于打造一套尽可能精致的核心体验,包含以下要素:
第一版必备
核心挖掘机制
- 流畅、灵敏的手指拖动式沙土清除
- 实时挖掘、路径呈曲线的隧道
- 挖掘时的沙粒粒子效果
- 令人满足的音效反馈
逼真水物理
- 基于重力的流动模拟
- 水在隧道中汇聚与流动
- 平滑的液体渲染,带光泽外观
- 水撞击表面时的飞溅效果
水罐车系统
- 屏幕底部带动画的水罐车
- 显示罐内液位的视觉注水量表
- 关卡完成时的庆祝动画(喇叭、车灯、彩纸)
星星收集
- 每关 3 颗可收集星星
- 发光的金色外观,带粒子光环
- 被水收集时的闪光特效和音效
- 胜利界面显示星星数量
前 5 关(教学进程)
- 第 1 关:简单的竖直路径,3 颗对齐的星星,教授基础挖掘
- 第 2 关:需要弯曲路径,沿曲线分布 3 颗星星,一个简单障碍物
- 第 3 关:两条可能路线(一条正确,一条通向死角)
- 第 4 关:水必须分流以收集侧路星星再合流
- 第 5 关:需要精准操作的狭窄隧道挑战
界面元素
- 顶部居中的关卡编号显示
- 菜单按钮(左上)配设置浮层
- 重开按钮(快捷访问)
- 带星级评定和下一关按钮的胜利界面
- 带重试按钮的失败界面
多汁与精致
- 流畅的 60 FPS 性能
- 挖掘、水花飞溅、星星收集的粒子效果
- 关卡完成时的庆祝彩纸
- 所有交互的高质量音效
- 状态之间的平滑过渡
留待后续版本
- 第 6-15 关(更复杂的机制)
- 可移动的障碍物和旋转的阻挡物
- 多个水罐
- 提示系统
- 跳关功能
- 金币经济
- 高级障碍物(可破坏方块、传送门、水泵)
- 关卡编辑器/自定义关卡
游戏视角
带轻微倾角的固定俯视
游戏采用固定屏幕俯视视角,配以微妙的 3D 倾角,为所有元素赋予景深和体积感:
- 摄像机位置:略微抬高并向下倾斜(约与垂直方向成 15-20 度)
- 视野:解谜面板始终全部可见——无滚动或摄像机移动
- 景深线索:柔和的阴影、光照和圆润的边缘在 2D 玩法中营造出 3D 外观
- 朝向:竖屏模式(720×1280),竖向解谜布局
- 静态摄像机:除特殊庆祝时刻外无镜头抖动
该视角让玩家能够:
- 一眼纵览整个谜题
- 规划挖掘策略
- 观看水从顶部流向底部
- 用手指轻松触及所有区域
游戏世界与关卡设计
解谜面板结构
每关由一块竖向解谜面板组成(可玩区域约 600×1000 像素),包含若干明确的区域:
顶部区域(蓄水池)
- 高度:距顶部约 150 像素
- 内容:一池明亮蓝色的水,表面有光泽
- 行为:水被屏障挡住,直到玩家在其下方挖出通路
- 视觉:柔和的涟漪动画,反射高光
中部区域(沙土与解谜区)
- 高度:约 700 像素(主玩法区域)
- 内容:可挖掘的柔和黄色沙土、内嵌星星、障碍物
- 沙土属性:
- 可用手指拖动挖掘
- 平滑变形形成弯曲隧道
- 细腻的颗粒纹理
- 清除时产生粒子效果
- 内嵌元素:
- 3 颗带发光粒子光环的金色星星
- 障碍物(实心方块、屏障、后期关卡中的可动元素)
- 多个积水口(高级关卡中)
底部区域(水罐车区)
- 高度:距底部约 150 像素
- 内容:带可见注水罐的卡通水罐车
- 水罐车细节:
- 红色驾驶室配带动画的车轮
- 显示水位的大号透明/半透明罐体
- 注水量表显示
- 注满时的庆祝动画
边界墙
- 外观:框住谜题的明亮蓝色实心墙
- 功能:约束水流并界定可玩边界
- 风格:平滑、圆润的边缘,配柔和阴影
第 1 关设计(教学)
目标:教授基础挖掘机制
布局:
[顶部:蓄水池 - 100 单位水]
|
[沙土区]
|
[星星 1] ← 距顶部 200px
|
[沙土区]
|
[星星 2] ← 距顶部 400px
|
[沙土区]
|
[星星 3] ← 距顶部 600px
|
[沙土区]
|
[底部:空水罐 - 需要 80 单位]
解法:玩家从蓄水池到水罐车挖出一条简单的竖直或略弯曲的路径,沿途收集全部三颗星星。
成功标准:
- 最低注满 80%(80 单位抵达水罐车)
- 3 颗星 = 完美评级
- 2 颗星 = 良好评级
- 1 颗星 = 通过评级
第 2 关设计
目标:引入弯曲挖掘和简单障碍物
布局:
[顶部:蓄水池]
|
[沙土区]
/
[实心方块障碍] ← 迫使玩家绕行挖掘
\
[沙土区]
|
[星星 1]
|
[沙土区]
[星星 2]
|
[沙土区]
[星星 3]
|
[底部:水罐车]
挑战:玩家必须绕过障碍物挖出一条 S 形弯曲路径,以收集星星并抵达水罐车。
第 3 关设计
目标:引入决策(正确路径与错误路径)
布局:
[顶部:蓄水池]
|
[沙土区]
|
[分叉点]
/ \
[死角] [正确路径]
[星星 1] [星星 2]
[星星 3]
|
[水罐车]
挑战:左侧路径有一颗星星但通向死角。右侧路径有两颗星星并通向水罐车。玩家必须明智选择,或挖出两条路径并管理水流。
第 4 关设计
目标:水的分流与合流
布局:
[顶部:蓄水池]
|
[沙土区]
|
[分流点]
/ \
[星星 1] [星星 2]
\ /
[合流点]
|
[星星 3]
|
[水罐车]
挑战:玩家必须挖出两条分开的路径进行分流,收集两侧星星,然后再合流以收集最后一颗星星并注满水罐车。
第 5 关设计
目标:精准挖掘(狭窄隧道)
布局:
[顶部:蓄水池]
|
[沙土区]
|
[障碍物之间的狭窄缝隙]
[星星 1]
|
[另一处狭窄缝隙]
[星星 2]
|
[最后一处狭窄缝隙]
[星星 3]
|
[水罐车]
挑战:玩家必须在实心障碍物之间挖出精准的狭窄隧道,且不能让水从两侧流失。
通用关卡设计原则
- 可见性:所有关键元素(星星、障碍物、水罐车)在关卡开始时均可见
- 清晰度:可挖掘沙土与实心障碍物之间有清晰的视觉区分
- 递进难度:每关引入一个新概念
- 公平挑战:始终可通过逻辑思考解决
- 可重玩性:大多数关卡存在多条解法路径
- 星星摆放:星星的位置设置为鼓励最优路径规划
编辑模式设计
编辑模式允许玩家自定义关卡布局并试验谜题设计。第一版应保持编辑模式简单且聚焦于核心自定义。
玩家可编辑内容
关卡布局
- 沙土摆放:在基于网格的系统中添加或移除沙块
- 障碍物摆放:放置水无法穿过的实心方块
- 星星摆放:将 3 颗可收集星星放置在沙土区任意位置
- 水量:调整蓄水池的初始水量(50-200 单位)
水罐车设置
- 注满要求:设置完成关卡所需的百分比(50-100%)
- 水罐车位置:调整底部水罐车的水平位置(左、中、右)
视觉自定义
- 沙土颜色:从预设配色中选择(黄、橙、棕、粉、紫)
- 水颜色:从预设配色中选择(蓝、青、绿、紫、粉)
- 背景颜色:从预设渐变选项中选择
编辑模式界面
顶栏:
- "编辑模式"标签
- 保存按钮(保存到 gameConfig)
- 试玩按钮(切换到当前编辑内容的游玩模式)
- 重置按钮(还原为原始关卡)
侧面板(从左侧滑入):
- 画笔工具:绘制沙块
- 橡皮工具:移除沙块
- 障碍工具:放置实心方块
- 星星工具:放置星星(最多 3 颗)
- 设置标签页:调整水量、注满要求、颜色
底栏:
- 网格开关(显示/隐藏网格叠加层)
- 撤销/重做按钮
编辑模式操作
桌面端:
- 点击并拖动以绘制/擦除
- 点击以放置障碍物/星星
- 右键点击以移除已放置元素
- 鼠标滚轮缩放(可选)
移动端:
- 点按并拖动以绘制/擦除
- 点按以放置障碍物/星星
- 长按以移除已放置元素
- 双指捏合缩放(可选)
约束
为防止出现无法通关的关卡:
- 最少沙土:中部区域至少 30% 必须为沙土(防止无解关卡)
- 星星数量限制:必须恰好放置 3 颗星星
- 水路径:系统校验从蓄水池到水罐车是否存在通路(若未检测到通路则警告)
- 水量:必须足以满足注满要求(若不可能则警告)
数据存储
所有编辑模式的更改都以如下形式保存到 window.gameConfig:
{
"customLevels": [
{
"id": "level_1_custom",
"sandGrid": [[1,1,0,1], [1,0,1,1], ...], // 二维数组
"obstacles": [{x: 200, y: 300}, ...],
"stars": [{x: 150, y: 250}, {x: 350, y: 450}, {x: 250, y: 650}],
"waterAmount": 100,
"fillRequirement": 80,
"sandColor": "#FFD966",
"waterColor": "#4A90E2",
"backgroundColor": "gradient1"
}
]
}
未来编辑模式功能(不在第一版中)
- 自定义障碍物类型(移动、旋转、可破坏)
- 多个蓄水池
- 关卡分享(导出/导入关卡代码)
- 社区关卡浏览器
操作设计
游戏采用单指触摸操作,为移动端优先的玩法优化,同时完整支持桌面端鼠标。
移动端操作(主要)
挖掘机制
- 触摸并拖动:玩家触摸沙土区并拖动手指挖出隧道
- 在沙土上按下 → 开始挖掘
- 拖动手指 → 隧道沿手指路径持续挖掘
- 抬起手指 → 停止挖掘
- 挖掘区域:仅中部沙土区可挖掘(蓄水池和水罐车区不可)
- 隧道宽度:固定宽度(约 40 像素)以保证玩法一致
- 连续挖掘:触摸点之间平滑插值,实现流畅的隧道创建
- 无误触:界面按钮拥有触摸优先级(触碰按钮时不触发挖掘)
界面交互
- 点按:所有按钮响应单次点按
- 菜单按钮(左上)
- 重开按钮
- 下一关按钮
- 设置选项
- 无多点触摸:游戏仅跟踪单点触摸用于挖掘(忽略额外触摸)
桌面端操作(次要)
挖掘机制
- 点击并拖动:玩家在沙土上点击并拖动鼠标挖出隧道
- 在沙土上按下鼠标 → 开始挖掘
- 拖动鼠标 → 隧道沿光标持续挖掘
- 松开鼠标 → 停止挖掘
- 光标反馈:光标在沙土上方时变为挖掘图标(铁铲或十字准星)
界面交互
- 点击:所有按钮响应鼠标点击
- 悬停:按钮显示悬停状态以提供视觉反馈
操作实现细节
触摸/鼠标跟踪
// 简化的操作逻辑
let isDigging = false;
let lastDigPosition = null;
// 触摸开始 / 鼠标按下
function onDigStart(x, y) {
if (isInSandArea(x, y) && !isOverUI(x, y)) {
isDigging = true;
lastDigPosition = {x, y};
digAtPosition(x, y);
}
}
// 触摸移动 / 鼠标移动
function onDigMove(x, y) {
if (isDigging && isInSandArea(x, y)) {
// 在上一位置与当前位置之间插值以获得平滑隧道
interpolateAndDig(lastDigPosition, {x, y});
lastDigPosition = {x, y};
}
}
// 触摸结束 / 鼠标松开
function onDigEnd() {
isDigging = false;
lastDigPosition = null;
}
防止误触
- 界面层优先:先检查触摸/点击是否位于界面元素上方
- 沙土区边界:仅在定义的沙土区内注册挖掘
- 按钮安全区:扩大按钮命中区域以防误点
输入平滑
- 插值:填补触摸/鼠标位置之间的空隙以获得平滑隧道
- 最小距离:仅在手指/鼠标移动至少 5 像素时才挖掘(防止意外的点状挖痕)
操作反馈
视觉反馈
- 挖掘光标:在可挖掘沙土上方显示铁铲/十字准星图标
- 沙粒:在挖掘位置立即产生粒子效果
- 隧道预览:微妙高亮显示隧道将被挖出的位置(可选)
音频反馈
- 挖掘音:挖掘时持续的轻柔刮擦声
- 沙土碎裂:颗粒碎屑音效
- 界面点击:所有按钮的令人满足的点击声
触觉反馈(移动端)
- 开始挖掘:开始挖掘时轻微的触觉脉冲
- 星星收集:水收集到星星时中等强度的触觉脉冲
- 关卡完成:胜利时强烈的触觉脉冲
无障碍考量
- 大触摸目标:所有界面按钮最小 96×96 像素
- 清晰视觉状态:所有交互元素有明显的悬停/激活状态
- 无时间要求:玩家可按自己的节奏挖掘
- 撤销选项:重开按钮始终可用以应对失误
胜负条件
胜利条件
当水罐达到所需注满百分比时,玩家通过该关卡。
胜利要求
- 主要目标:水罐注满至最低阈值(通常为 80-100%,视关卡而定)
- 送水:必须有足够的水从蓄水池流入水罐
- 时间限制:无——玩家可按需花费任意时间规划和挖掘
星级评定系统
玩家根据表现获得星级评定:
3 颗星(完美):
- 水罐注满至 100%
- 收集全部 3 颗星星
- 水浪费极少
2 颗星(极佳):
- 水罐注满至 100%
- 收集 2 颗星星
- 或:水罐注满至 100%,收集全部星星,但浪费了一些水
1 颗星(通过):
- 水罐注满至最低要求(80%)
- 收集 1 颗及以上星星
- 或:水罐注满至 100% 但未收集任何星星
0 颗星(失败):
- 水罐未注满至最低要求
胜利流程
- 水罐达到注满阈值:注水量表达到所需百分比
- 触发庆祝:延迟 0.5 秒,然后:
- 播放水罐车喇叭音效
- 水罐车前灯闪烁
- 从水罐车迸出彩纸爆炸
- 水罐车轻微弹跳
- 出现胜利界面:平滑上滑动画,显示:
- 大号"完美!"文字(或根据星星显示"极佳!"/"不错!")
- 星级评定显示(星星逐颗动画出现)
- 关卡编号
- 获得的金币(若已实现)
- 两个按钮:"重玩"和"下一关"
- 背景庆祝:持续飘落的彩纸粒子
- 胜利音乐:简短欢快的旋律(3-5 秒)
失败条件
当抵达水罐的水量不足以满足最低注满要求时,玩家在该关卡失败。
失败情形
水流出屏幕流失:
- 玩家挖的隧道将水引出可玩区域
- 水从两侧或底部流走而未抵达水罐车
水困在死角:
- 玩家造成积水口,水积聚却无法抵达水罐车
- 过多水困在孤立区域
水量不足:
- 玩家的隧道设计导致水铺展得过薄
- 抵达水罐车的水不足以达到最低注满量
失败判定
游戏监测水流,并在以下情况判定失败:
- 所有水已停止移动(沉积于积水口或抵达水罐车)
- 水罐注满百分比低于最低要求
- 蓄水池中已无剩余水
失败流程
- 失败检测:游戏在水停止移动后等待 2 秒
- 失败确认:检查水罐注满量是否 < 最低要求
- 出现失败界面:平滑淡入,显示:
- "水不够!"文字
- 当前注满百分比与所需百分比对比
- 鼓励性讯息:"再试一次!"或"换个思路!"
- 两个按钮:"重试"(大号、主要)和"菜单"(较小、次要)
- 无严厉惩罚:无生命系统,无等待——可即时重试
- 柔和失败音:温和的"啊哦"声,不刺耳、不惩罚
无失败状态
以下不属于失败条件:
- 未拿星星:玩家可在未收集任何星星的情况下完成关卡(仅评级较低)
- 完成缓慢:无时间限制——玩家可按需花费任意时间
- 低效路径:任何能送达足够水的路径都有效
重试机制
快捷重开
- 重开按钮:游玩过程中始终显示于左上角
- 即时重置:点按重开可立即将关卡重置为起始状态
- 无确认:直接重开以便快速迭代(无"确定吗?"弹窗)
失败后重试
- 大号重试按钮:失败界面上的主要操作
- 保留进度:先前尝试的关卡解锁和星级评定会被保存
- 快速加载:即时重载关卡,无加载界面
进程
关卡解锁
- 线性进程:关卡按顺序解锁
- 无星星要求:完成一关(即便 0 颗星)即可解锁下一关
- 随时重玩:玩家可重玩任何已完成关卡以提升星级评定
完成度追踪
保存到 window.gameConfig:
{
"levelProgress": {
"level_1": { "completed": true, "stars": 3, "bestFill": 100 },
"level_2": { "completed": true, "stars": 2, "bestFill": 95 },
"level_3": { "completed": false, "stars": 0, "bestFill": 0 }
}
}
美术风格与视觉主题
游戏采用一种受顶级手游益智作品启发的超精致 3D 超休闲美术风格,配以明亮鲜艳的色彩、平滑圆润的边缘和高级的视觉质感。
整体美学
- 风格:卡通写实 3D,配柔和光照与景深
- 氛围:欢快、令人满足、高级
- 配色:明亮、鲜艳、高对比度的色彩
- 光照:柔和的环境光,配微妙的高光与阴影
- 边缘:所有物体都有平滑圆润的边缘(无尖角)
- 景深:每个元素都有体积感和 3D 外观(没有扁平的)
配色
主色
- 沙土:柔和黄(#FFD966),带细腻颗粒纹理
- 水:明亮有光泽的蓝(#4A90E2),配青色高光(#7EC8E3)
- 驾驶室:醒目红(#E74C3C)
- 水罐:透明/半透明,注满时带蓝色调
- 星星:金黄(#FFD700),带暖色辉光
背景色
- 谜题边框:明亮蓝(#3498DB)墙
- 背景渐变:柔和的粉彩渐变(粉 #FFB6C1 到紫 #DDA0DD 到蓝 #87CEEB)
- 界面背景:半透明深色叠加层(#000000,60% 不透明度)用于菜单
点缀色
- 成功绿:#2ECC71(用于对勾、正面反馈)
- 警示橙:#F39C12(用于提示、警告)
- 彩纸:多彩(红、黄、蓝、绿、粉、紫)
视觉元素
沙土
- 外观:柔和黄,带微妙颗粒纹理
- 明暗:从顶部浅黄到底部略深的柔和渐变
- 边缘:沙土与空气或障碍物交界处平滑圆润
- 变形:实时挖掘产生平滑的弯曲隧道
- 粒子:挖掘时飞出小沙粒(3-5 像素)
- 颜色:略深的黄(#F4C542)
- 行为:向外呈弧线飞出、淡出、受重力下落
水
- 外观:明亮有光泽的蓝,带反射表面
- 高光:顶面的青/白高光(#FFFFFF,40% 不透明度)
- 明暗:底部更深的蓝,顶部更浅(渐变)
- 表面:积水时平滑、略带涟漪的动画
- 流动:平滑的基于粒子或基于网格的渲染
- 飞溅:水撞击表面时的白/青飞溅粒子
- 小水滴向外呈弧线飞出
- 快速淡出(0.3-0.5 秒)
水罐车
- 驾驶室:
- 醒目红(#E74C3C),带轻微渐变(顶部更亮)
- 圆润边缘,卡通风格
- 两个圆形前灯(黄 #FFD700)
- 小窗户(深蓝色调 #2C3E50)
- 水罐:
- 大号圆柱形
- 透明/半透明材质(玻璃质感)
- 注满水时带蓝色调
- 内部液位可见
- 表面有反射高光
- 车轮:
- 黑色轮胎(#2C3E50)
- 灰色轮辋(#95A5A6)
- 水罐车庆祝时的微妙旋转动画
- 尺寸:约 200 像素宽 × 120 像素高
星星
- 形状:经典五角星
- 颜色:金黄(#FFD700),带暖色辉光
- 辉光效果:柔和的放射状渐变光晕(黄到透明)
- 粒子光环:环绕星星运转的小金色闪光粒子
- 每颗星 5-8 个粒子
- 缓慢的圆周运动
- 闪烁效果(淡入/淡出)
- 尺寸:约 60 像素直径
- 收集效果:
- 星星放大至 1.5 倍
- 明亮的闪光
- 金色闪光粒子爆发
- 星星消失
障碍物(实心方块)
- 外观:平滑圆润的矩形
- 颜色:柔和紫/薰衣草色(#B19CD9)
- 明暗:从顶部浅紫到底部更深的渐变
- 边缘:圆角(相当于 border-radius: 12px)
- 阴影:方块下方的柔和投影
- 尺寸:可变(通常 80×80 到 200×200 像素)
界面元素
按钮:
- 形状:圆角矩形(文字按钮为胶囊形,图标按钮为圆形)
- 颜色:
- 主要(下一关、开始):明亮绿(#2ECC71)
- 次要(重试、菜单):蓝(#3498DB)
- 危险(关闭):红(#E74C3C)
- 状态:
- 常规:纯色配微妙渐变
- 悬停:略微变亮,放大至 1.05 倍
- 激活:略微变暗,缩小至 0.95 倍
- 文字:白色(#FFFFFF),加粗,大号字体
- 阴影:柔和投影以增强景深
文字:
- 字体:加粗、圆润的无衬线体(类似 "Fredoka One" 或 "Baloo")
- 关卡编号:大号白色文字,带深色描边
- 胜利文字:超大号、加粗,带微妙动画(缩放脉动)
- 界面标签:中号,清晰易读
图标:
- 风格:简单、圆润、卡通风格
- 菜单图标:三条水平线(汉堡)
- 重开图标:环形箭头
- 设置图标:齿轮
- 音效图标:带声波的喇叭
- 颜色:白色配微妙阴影以保证可见性
动画原则
所有动画遵循以下原则以获得最大满足感:
- 平滑缓动:使用缓入缓出曲线(无线性动画)
- 预备:元素在主动作前略微蓄力
- 跟随:元素略微过冲后再稳定
- 挤压与拉伸:物体在快速移动时略微变形
- 次级运动:粒子和特效尾随主动作
粒子效果
挖掘粒子
- 触发:每当沙土被清除时
- 外观:小黄沙粒(3-5 像素)
- 行为:
- 在挖掘位置生成
- 向随机方向呈弧线飞出
- 受重力影响
- 0.5 秒内淡出
- 数量:每次挖掘动作 5-10 个粒子
水花飞溅粒子
- 触发:水撞击表面或急剧改变方向时
- 外观:小青/白水滴(4-6 像素)
- 行为:
- 在撞击点生成
- 向外向上呈弧线飞出
- 受重力影响
- 0.3 秒内淡出
- 数量:每次飞溅 3-8 个粒子
星星收集粒子
- 触发:水触碰星星时
- 外观:金色闪光(6-10 像素,星形)
- 行为:
- 从星星中心向外爆发
- 快速向外运动后减速
- 移动时旋转
- 0.8 秒内淡出
- 数量:每颗星 15-25 个粒子
彩纸粒子(胜利)
- 触发:关卡完成
- 外观:多彩矩形(8-12 像素)
- 颜色:红、黄、蓝、绿、粉、紫(随机)
- 行为:
- 从水罐车位置生成
- 向上射出后受重力下落
- 下落时旋转
- 轻柔的左右飘移
- 3-4 秒后淡出
- 数量:50-100 个粒子
素材生成与代码渲染
生成为图像素材
- 水罐车:包含驾驶室、水罐、车轮的完整水罐车(多种状态:空、注水中、庆祝中)
- 星星:带辉光效果的金色星星
- 界面图标:菜单、重开、设置、音效图标
- 背景元素:如有需要的装饰性元素
用代码渲染(CSS/Canvas)
- 沙土:渲染为带程序化纹理的彩色矩形/像素
- 水:粒子系统或基于网格的流体模拟
- 障碍物:用 CSS/Canvas 绘制的简单圆角矩形
- 粒子:所有粒子效果(沙粒、飞溅、闪光、彩纸)
- 界面按钮:CSS 样式的圆角矩形配文字
- 注水量表:用 CSS 制作的动画进度条
一致性要求
- 观察角度:所有素材应匹配轻微俯视角(15-20 度)
- 光照方向:一致的光源来自左上方
- 阴影方向:阴影投向右下方
- 美术风格:所有生成素材必须匹配卡通写实 3D 风格
- 色彩和谐:所有颜色应在既定配色中协调统一