请制作一个可自由探索的**3D峡谷滑板实验场**。用户面对一条完整的U形轨道，可以直接放置滑手、调整质量与谷底粗糙区，运行或暂停运动，直观看到重力滑行中的动势能转换和摩擦耗散。

让用户愿意拿起滑手、放到高处并观察下一次滑行。轨道和滑手构成视觉主体，能量表示便于比较当前分布，时间曲线呈现已发生的变化；三者共同组成一处可以持续操作的峡谷场景。整体借鉴《Alto's Adventure》的剪影层次、暖冷色光与流畅运动感，做成有完整美术设计的低多边形3D作品。用户自行选择操作顺序与观察时长，无需完成关卡、目标清单或提交判定。

## 1. 科学模型与参数

运动发生在竖直平面内，以完整3D场景呈现。滑手采用约束在轨道上的质点模型，忽略空气阻力和转动动能，重力加速度g=9.8 m/s²。高度和距离使用m，速度使用m/s，能量使用J，时间使用s。

U形轨道中央为20 m长、高度0 m的水平谷底，两侧通过平滑相接的单调坡道升至30 m。坡道具体形状自行设计，可见几何、切线和运动计算使用同一世界尺度。轨道不含额外峰值、跳台或隐藏损耗，滑手始终受轨道约束，不模拟自然脱轨。

开放以下参数：

| 参数 | 范围与精度 | 默认值 |
| --- | --- | --- |
| 滑手质量m | 20–100 kg，步长5 kg | 60 kg |
| 起始高度h₀ | 0–30 m，精确调节步长0.1 m；可选左右坡，也可直接沿轨放置 | 左坡12 m |
| 粗糙区长度L | 0–20 m，步长1 m | 20 m |
| 摩擦系数μ | 0–0.20，步长0.01 | 0.05 |

滑手从选定位置静止释放。粗糙区始终居中且只覆盖水平谷底，其余轨道无摩擦。区内运动时法向力N=mg，摩擦力大小μmg、方向与运动相反；累计热能按实际摩擦路程计算Q=∫μmg·dℓ，离区后停止增加。静止于水平面时保持静止，摩擦不会使其反向启动。

动能K=mv²/2、势能U=mgh，初始能量E₀=mgh₀；每次释放满足K+U+Q=E₀。沿轨运动由重力切向分量及上述摩擦共同决定，转向发生在实际能量与轨道几何允许的位置。动能在粗糙区内耗尽时，应停在实际停点；不以预设停点、负动能裁剪、瞬移或额外推动维持运动。运行中没有向当前运动额外注入能量的操作。

## 2. 核心交互与状态反馈

首次打开呈现默认起点的暂停状态。

用户能直接拿起滑手并沿轨放置。指针悬停或键盘聚焦时，滑手出现轮廓或抓取标记，提示可操作；拿起时暂停，在候选轨道落点显示与实体有别的预览、对应高度和初始能量。预览不是一次已释放的运动，不加入曲线或累计热能。松手到合法轨道位置完成放置，滑手、起点标记、初始势能和能量标尺共同更新；轨道外松手或Esc取消。精确高度输入与左右坡选择控制同一起点，相关数值与场景位置相互对应。

- **编辑初态**：开始移动起点或改变质量即暂停；确认新的起点或质量后，以当前粗糙区设置建立静止初态，清空本次计时、曲线、运动轨迹和Q，等待运行。质量滑块编辑过程中即时显示新初态能量。起点拖到轨道外可取消，恢复编辑前状态并清理预览，保持暂停。

粗糙区两端有可拖动的长度调节点，悬停或聚焦时突出可抓取的端点；拖动任一端时另一端对称移动，保持区域居中且不超出谷底，同时就近显示长度并更新数值输入。L=0时保留可再次展开的控制入口。改变μ时，通过可辨的纹理强弱、表面标记或图例表达摩擦条件，不把颜色变化当成已经产生的热能。L与μ编辑即时生效，无需额外提交；当前滑手的位置和速度连续保留，新条件仅影响之后实际发生的摩擦，已经累计的Q保持不变。

- **编辑耗散条件**：运行或暂停时均可改变L和μ；保留当前位置、速度、计时、曲线与累计Q，只改变后续耗散。

滑行时，角色运动、切向速度箭头、高度、能量表示和时间曲线共同响应。下坡加速、上坡减速与转向由运动直接表现；停下后显示实际停点及静止状态。摩擦反馈出现在滑手与粗糙区的接触处，强弱对应当时的耗散率；离区或停下即停止接触耗散反馈，累计Q仍保留。选中滑手时突出其高度与速度读数；点选K/U/Q图例时，同时突出对应能量表示、曲线及当前值，其他表示仍可辨认，再次操作可退出强调。

提供运行/暂停、在当前起点重新释放、恢复默认场景。

- **暂停与继续**：暂停同时停止运动、模拟时间、采样和Q累计；继续从同一状态推进。重复操作不产生重复积分或恢复跳跃，时间推进足以稳定处理转向和摩擦停点。

- **重新释放**：使用当前起点、质量及粗糙区设置，从静止开始并清空本次数据。

- **恢复默认场景**：恢复全部默认参数、默认镜头与暂停初态。

滑手停在谷底后保留实际停点与累计热能，用户仍可调参、重新放置或重新释放。质量、起始高度、L和μ均提供精确数值入口；空值、非数或越界输入不改变最近合法状态，附近说明合法范围，修正后可继续操作。

相机支持改变观察角度与远近，提供回到完整轨道的视角；初始视角能辨认3D轨道的厚度、支撑与空间深度，同时看清两坡和谷底。只有对场景背景的镜头手势才改变视角，滑手与长度手柄的拖动优先操作对应对象；镜头操作不改动物理状态。

## 3. 视觉设计与游戏风格

**游戏风格：以《Alto's Adventure》的黄昏山谷、剪影层次和流畅滑行感为参照，将其转化为可近距离操作的低多边形3D峡谷能量场。** 借用色光、构图层次和运动气质，角色、图标及场景资源自行创作，不复制原作素材或引入跑酷关卡。

- **场景与材质**：画面必须有可辨的前景岩石或支撑、中景实体轨道与滑手、远景山体与天空，利用遮挡、明暗和远近色差形成深度。暖橙岩壁与黄昏光照、冷色远山与阴影形成统一暖冷关系。轨道有厚度和支撑、边缘高光或克制的发光边线；粗糙区有颗粒质感和独立边界，能与平滑轨面直接区分。滑手有可辨认的角色轮廓与滑板，姿态贴合轨道切向；不可用一个无特征小点代替角色。材质细节服务于形体辨识，背景不遮住起点、谷底或滑手。
- **科学操作的游戏化呈现**：拿起滑手像在场景中摆放实体，合法落点、抬起预览和放置后的实体在形状或线型上可区分；粗糙区手柄像铺面两端的实验标记。高度标尺、长度标注、质量控件、按钮与图表使用协调的字体、边框、图标和选中样式。滑手、长度手柄和镜头各有明确的可操作提示，反馈贴近对象；不要求用户先读长篇说明才能发现主要操作。
- **观察层次与交互重点**：打开即看到可操作的完整轨道，标题不独占首屏。1440×900视口下，主场景视图区宽度至少为视口的60%、高度至少为55%，不把外围装饰或文字面板计为场景；核心参数、运行状态和能量分布同屏可读。能量表示次于运动主体，时间曲线用于查看变化，公式详情默认收起。主场景保持连续完整，不被等权卡片切碎；普通调参、暂停和选中不触发镜头跳转或布局重排，滑手在默认完整视角下始终可定位。
- **颜色与信息层级**：K绿、U蓝、Q红仅承担稳定的科学语义，与背景装饰保持可辨对比；每项兼有名称、符号或线型，不能仅凭颜色辨认。标题、主读数和辅助说明具有清楚字号与明暗层级。图表轴、单位、当前状态和条件变更标记在默认缩放下可读；悬停提示不遮住当前滑手或正在编辑的手柄。暂停、当前选择、预览与静止兼用轮廓、图标或文字区分。
- **反馈动效**：滑行、转向、控件跟手和能量变化连贯，没有角色跳位、残影堆积或读数落后。接触处的暖色光点或等效局部反馈表达正在发生的摩擦耗散，其颜色与累计热能语义协调；停止耗散后不持续喷射。放置、选中和调参可有短促的确认反馈，但不持续闪烁、震屏或用长动画锁住操作。暂停立即冻结科学运动与采样；仅装饰的雾、光晕等可继续，但可减弱，且不造成仍在滑行的错觉。

整体应呈现统一而有吸引力的游戏场景：空间有深度，轨道与角色有清晰轮廓，光色有主次，仪表像属于这处实验场；完整默认场景和运行中的画面都应保持这种完成度。不能只在通用表单或图表页面周围添加峡谷背景图来替代场景设计。具体构图、字体、岩体造型、图形技术和代码组织自行设计，不要求逐像素复刻参照游戏。

桌面默认无需横向滚动或展开说明即可操作主要控制；窄屏可重排并纵向滚动，不套用桌面占比。滑手放置、长度和其他参数均有点击或数值替代，交互入口有可见键盘焦点；HUD与解释可收起，浮层不遮挡操作目标。减弱装饰动效时保留科学运动和必要状态反馈；音效可选，若提供须可静音。

## 4. 科学表示与结果解释

持续显示速度、高度、K、U、Q及总能量K+U+Q。动能用绿色、势能用蓝色、热能用红色，场景与图例保持同一语义。能量条或等效表示共用数值尺度，以便直接比较各项大小；初态改变后按新的E₀更新标尺。质量影响能量规模，不能任意改变同条件下的重力滑行速度。

轨道高度、滑手位置、粗糙区长度及标尺使用同一世界尺度。速度箭头沿实际切线并指向运动方向；为可见性放大的角色或箭头需有说明，镜头投影不作为物理尺度。热能、阻滞和接触光效对应实际耗散，μ=0或L=0时没有摩擦生热。

速度及能量曲线自动记录本次实际运动，共用时间轴。查看历史数据点只显示带有时刻标识的数值提示，不回退主场景或以旧值替换当前读数。运行中改变μ或L，在实际生效时刻标记条件变化，过去数据保持不变。

以当前现象解释当前状态：下滑与上升对应K/U转换，粗糙区接触对应机械能减少和Q增加，转向或静止对应当前能量与受力条件。耗散很小时也依据实际读数解释，页面不设置成功/失败结算。

可展开的科学信息区结合当前m、h、v和Q给出关系式及数值代入，说明质量改变能量规模、L和μ改变经过期间的耗散。数值误差如实说明，不以补能或预设动画掩盖计算差异。

## 5. 运行与交付

交付完整可运行的纯前端网页，以`index.html`为入口，通过本地HTTP服务即可打开。源码、依赖和资源随项目提供，核心流程不依赖后端或外部网络。

界面中文，参数含义与量纲明确。附运行说明和实际完成的自检说明，未完成或未验证部分如实记录。框架、内部命名和代码组织由你选择。
