f31518d7e3
三个对应玩家直接可见行为的需求文档。锤击形变涵盖各向异性流动与边缘平整;表面磨损涵盖铁锈脱落与无漂移;网格质量承诺连续锻打 50+ 次后无明显退化。 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
6.7 KiB
6.7 KiB
表面磨损与外观需求
项目: BladeSmith
文档类型: 需求文档(专题)
版本: 2.0
最后更新: 2026-08-11
状态: 整合自原 2026-01-22-表面磨损系统细节.md
本文档从玩家视角描述表面磨损与外观的需求。技术实现见 design/02-表面磨损-顶点属性与无漂移采样设计.md。总体需求见 00-锻造系统总体需求.md。
1. 玩家可见行为
1.1 表面状态变化
锻材的表面状态会随锻造过程自然演变:
- 新铁块: 表面是生锈/氧化层,颜色呈橙红色,表面粗糙
- 锤击区域: 铁锈脱落,露出光亮金属本体
- 金属光泽: 打磨后金属度增加(从哑光到镜面),粗糙度降低
- 表面状态: 支持铁锈、氧化层、酸蚀痕迹、划痕等多种表面状态
1.2 铁锈的物理特性(玩家可感知)
真实铁锈层的视觉特征:
| 特性 | 表现 | 玩家可感知度 |
|---|---|---|
| 厚度 | 0.1-2mm(可视严重程度) | 厚铁锈显得更深色、更粗糙 |
| 成分 | 红锈、黑锈混合 | 颜色从橙红到深褐 |
| 附着强度 | 低,易被机械摩擦去除 | 锤击时铁锈容易脱落 |
| 颜色 | 橙红到深褐 | 不同锈蚀程度颜色不同 |
| 粗糙度 | 高(微观凹凸不平) | 表面摸起来粗糙不平 |
锻造去锈原理(玩家可见):
- 锤击压力产生摩擦力,铁锈层破碎脱落
- 塑性形变暴露新鲜金属表面
- 高温时部分氧化层会还原
1.3 表面特征跟随性(关键要求)
表面特征必须随形变一起移动,不能"漂移"或"贴在屏幕上"。
这是玩家最容易察觉的问题:
- 铁锈图案应该"锁定"在材料上,随材料一起移动
- 锻打前某个位置的铁锈,锻打后仍应在该材料部位(只是位置随形变改变)
- 不能出现铁锈"滑走"或原地消失又突然出现的情况
正确行为示例:
锻打前: 位置A有铁锈(表面颜色深)
锻打后: 位置A移动到新位置B,铁锈仍在该材料部位
错误行为示例(玩家会感到不自然):
锻打前: 位置A有铁锈
锻打后: 位置A移动了,但铁锈还在原地(漂移)
或铁锈突然消失(表面颜色变亮)
1.4 高级表面效果
大马士革花纹
支持大马士革钢的层状花纹:
- 高碳钢层:深色
- 低碳钢层:浅色
- 层状分布:基于材料结构
划痕系统
表面可见方向性划痕:
- 沿着锤击方向的划痕
- 划痕在未打磨区域更明显
- 划痕影响表面粗糙度和反光
水渍和氧化
淬火时的水渍痕迹:
- 蓝绿色氧化色调
- 油渍、灰尘等表面污渍
- 时间累积的氧化层变化
2. 玩家可调参数
| 参数功能名 | 默认值 | 范围 | 玩家感受 |
|---|---|---|---|
| 铁锈粗糙度 | 0.9 | 0.5-1.0 | 铁锈表面的粗糙程度。值越大,铁锈越粗糙 |
| 金属粗糙度 | 0.2 | 0.1-0.5 | 打磨后金属表面的粗糙程度。值越小,金属越光滑 |
| 铁锈基色 | (0.6, 0.3, 0.1) | RGB颜色 | 铁锈的基本颜色 |
| 金属基色 | (0.8, 0.8, 0.85) | RGB颜色 | 金属本体(钢材)的颜色 |
| 铁锈金属度 | 0.0 | 0.0-0.3 | 铁锈的金属反射程度。0为完全不反光 |
| 金属金属度 | 1.0 | 0.8-1.0 | 打磨后金属的反射程度。1为完全反光 |
| 大马士革图层开关 | 关闭 | 开启/关闭 | 是否启用大马士革层状花纹 |
推荐参数配置
新铁块(完全生锈):
- 铁锈粗糙度 = 0.95
- 金属粗糙度 = 0.15
- 铁锈基色 = 橙红色 (0.7, 0.35, 0.15)
- 金属基色 = 钢铁色 (0.75, 0.75, 0.8)
半旧铁块(部分打磨):
- 铁锈粗糙度 = 0.85
- 金属粗糙度 = 0.25
- 铁锈基色 = 深褐色 (0.5, 0.25, 0.1)
- 金属基色 = 亮钢铁色 (0.8, 0.8, 0.85)
高碳钢(大马士革):
- 铁锈粗糙度 = 0.9
- 金属粗糙度 = 0.2
- 铁锈基色 = 深色层 (0.3, 0.15, 0.1)
- 金属基色 = 浅色层 (0.6, 0.55, 0.5)
- 大马士革图层开关 = 开启
3. 视觉/听觉反馈
3.1 视觉反馈
- 实时表面变化: 锤击时,受击区域铁锈实时脱落,露出金属光泽
- 颜色渐变: 从生锈的橙红色 → 打磨后的钢灰色,颜色过渡自然
- 粗糙度变化: 从粗糙的哑光表面 → 平滑的金属表面,视觉质感明显
- 金属反光: 打磨后表面能反射环境光,有真实的金属质感
3.2 表面细节
- 铁锈图案: 随机的铁锈斑块分布,自然不重复
- 划痕细节: 方向性划痕,增加真实感
- 氧化层: 蓝绿色调的氧化痕迹
- 水渍: 淬火后可见的水渍图案
3.3 听觉反馈
- 摩擦声: 锤击时金属与金属的摩擦声
- 铁锈脱落声: 可选的铁锈破碎声效
4. 边界与限制(玩家不应期望的行为)
4.1 表面细节限制
- 顶点密度瓶颈: 当前系统使用顶点属性存储表面状态,细节程度受限于网格密度(20-50万顶点)
- 无物理反射: 打磨效果通过粗糙度模拟,无法达到光线追踪级别的真实反射
- 纹理细节: 表面细节(铁锈图案、划痕)是程序化生成的,不是真实纹理贴图
4.2 不可达效果
- 玩家不能期待系统支持"油污涂层"、"漆面"等超出锻造范围的表面处理
- 系统不会模拟"长期户外氧化"等时间跨度极大的效果
- 表面特征跟随性依赖于顶点属性,极端形变时可能出现轻微不连续
5. 验收清单
- 锤击后表面从"生锈"变"光亮",露出金属本体
- 金属度从 0.0 增加到 1.0(可视化)
- 粗糙度从 0.9 降低到 0.2(可视化)
- 支持铁锈、氧化层、酸蚀痕迹、划痕等多种表面状态
- 表面特征随形变一起移动,无漂移现象(关键验收点)
- 铁锈图案自然不重复,空间连续
- 支持大马士革钢的层状花纹(可选)
- 支持方向性划痕效果(可选)
- 支持水渍和氧化痕迹(可选)
- 锤击期间帧率稳定 60 FPS
- 玩家能通过调整参数控制铁锈颜色、粗糙度等外观
- 不同材质(新铁块、半旧、高碳钢)有明显的视觉差异
6. 引用
- 对应技术设计: ../design/02-表面磨损-顶点属性与无漂移采样设计.md
- 总体需求: 00-锻造系统总体需求.md
- 原始设计文档(归档): ../_archive/plans/2026-01-22-表面磨损系统细节.md