docs(design): 添加游戏愿景、系统设计与v0.1范围文档
新增: game-vision.md, v01-scope.md, brainstorm 记录, player-controller/interaction-system/collection-system 设计, scene-v01-suburban 场景设计 更新: CLAUDE.md 协作规范, style-guide 时代设定, current.md/roadmap.md 进度追踪, design 命令模板
This commit is contained in:
@@ -0,0 +1,130 @@
|
||||
# 玩家角色控制 — 设计文档
|
||||
|
||||
> 对应程序实现:角色控制器、摄像机系统、动画蓝图
|
||||
|
||||
---
|
||||
|
||||
## 设计目标
|
||||
|
||||
让玩家"成为那个男孩"——操作直觉、移动流畅,通过简单的操控就能沉浸在城郊场景的漫游中。控制器不应成为体验的障碍。
|
||||
|
||||
---
|
||||
|
||||
## 视角设计
|
||||
|
||||
### 摄像机:第三人称跟随
|
||||
|
||||
- **风格参考**: 《我的暑假》的观察距离——不远不近,能看到角色全身和周围环境
|
||||
- **默认距离**: 角色身后约3-4米,略高于角色头部(约15°俯角)
|
||||
- **镜头特点**:
|
||||
- 跟随平顺,有轻微延迟(软跟随,不生硬锁定)
|
||||
- 角色转身时镜头平滑过渡
|
||||
- 靠墙时镜头自动拉近,避免穿墙
|
||||
|
||||
### 操作方式
|
||||
|
||||
| 操作 | 手柄(默认) | 键鼠 |
|
||||
|------|-------------|------|
|
||||
| 移动 | 左摇杆 | WASD |
|
||||
| 视角 | 右摇杆 | 鼠标移动 |
|
||||
| 跑步 | 按住左摇杆 / R1 | 按住 Shift |
|
||||
| 蹲下 | R3 / ○ | 按住 Ctrl |
|
||||
| 交互 | △ / A | E |
|
||||
| 取消/返回 | ○ / B | ESC |
|
||||
|
||||
> 注:优先适配键鼠操作,手柄映射作为后续优化。
|
||||
|
||||
---
|
||||
|
||||
## 移动系统
|
||||
|
||||
### 步行(默认)
|
||||
- **速度**: 正常散步节奏,约 2.5 m/s
|
||||
- **用途**: 探索、观察环境、接近可交互物体
|
||||
- **特征**: 步行动画自然,有轻微的左右摇摆
|
||||
|
||||
### 跑步
|
||||
- **速度**: 约步行速度的 1.8 倍(约 4.5 m/s)
|
||||
- **触发**: 按住跑步键 + 移动方向
|
||||
- **体力**: v0.1 不做体力限制,后续版本可考虑加入(跑累了会喘气减速)
|
||||
- **特征**: 跑步时有明显的加速过渡,停下时有减速惯性
|
||||
|
||||
### 蹲下
|
||||
- **速度**: 约步行的 0.5 倍
|
||||
- **用途**:
|
||||
- 探索低矮空间(桌底、床底、矮灌木丛)
|
||||
- 悄悄靠近(捉虫、捉迷藏)
|
||||
- 查看地面上的小东西
|
||||
- **特征**: 蹲下后视角自动降低,能看到平时忽略的细节
|
||||
|
||||
### 转身与停止
|
||||
- 转身有动画过渡,不瞬移
|
||||
- 停止时有惯性减速(约0.2秒),不会突兀地定住
|
||||
- 急停时有一小步调整动画
|
||||
|
||||
---
|
||||
|
||||
## 交互触发方式
|
||||
|
||||
### 靠近触发
|
||||
- 当角色接近可交互物体(约1.5米)时,屏幕显示交互提示
|
||||
- 提示样式:物体上方出现简洁的图标 + 文字(如"🔍 查看冰箱")
|
||||
- 多个可交互物体时,优先显示最近的
|
||||
- 玩家按交互键执行
|
||||
|
||||
### 交互锁定
|
||||
- 交互中角色自动面朝物体
|
||||
- 交互动画播放期间,移动输入被短暂抑制
|
||||
- 可通过取消键提前退出交互
|
||||
|
||||
---
|
||||
|
||||
## 动画需求清单
|
||||
|
||||
### 基础移动动画
|
||||
| 动画 | 优先级 | 说明 |
|
||||
|------|--------|------|
|
||||
| Idle(待机) | P0 | 自然站立,有呼吸起伏和偶尔的小动作 |
|
||||
| Walk(步行) | P0 | 4方向或8方向步行循环 |
|
||||
| Run(跑步) | P0 | 跑步循环,起步和停止有过渡 |
|
||||
| Crouch Idle(蹲伏待机) | P1 | 蹲下时的待机姿势 |
|
||||
| Crouch Walk(蹲伏移动) | P1 | 蹲下时的缓慢移动 |
|
||||
|
||||
### 交互动画
|
||||
| 动画 | 优先级 | 说明 |
|
||||
|------|--------|------|
|
||||
| Pick Up(拾取) | P0 | 弯腰捡起地面物品 |
|
||||
| Open Door(开门) | P1 | 推门/拉门动作 |
|
||||
| Open Drawer(翻抽屉) | P2 | 拉开抽屉查看 |
|
||||
| Examine(端详) | P1 | 拿起物品在手中翻转查看 |
|
||||
|
||||
### 过渡动画
|
||||
| 动画 | 优先级 | 说明 |
|
||||
|------|--------|------|
|
||||
| Walk ↔ Run 过渡 | P0 | 步行与跑步之间的平滑混合 |
|
||||
| Stand ↔ Crouch 过渡 | P1 | 站立与蹲下之间的过渡 |
|
||||
| Stop(急停) | P1 | 从移动状态停止的过渡 |
|
||||
|
||||
---
|
||||
|
||||
## v0.1 最小可行范围
|
||||
|
||||
v0.1 只需实现以下核心操控:
|
||||
|
||||
### 必做(P0)
|
||||
- [x] 第三人称摄像机跟随
|
||||
- [x] WASD 步行移动
|
||||
- [x] Shift 跑步(速度切换,无体力限制)
|
||||
- [x] 靠近物体显示交互提示
|
||||
- [x] E 键交互(拾取地面物品)
|
||||
|
||||
### 可以简化
|
||||
- 蹲下系统 → v0.2 再实现
|
||||
- 动画可以用简单的占位动画
|
||||
- 摄像机碰撞处理可以简化
|
||||
|
||||
### 不做
|
||||
- 体力系统
|
||||
- 攀爬/跳跃
|
||||
- 手柄适配(v0.1 优先键鼠)
|
||||
- 角色换装/自定义
|
||||
Reference in New Issue
Block a user