Commit Graph

69 Commits

Author SHA1 Message Date
starmen1265 ff8d77d8c0 feat: 适配 UE5.8 升级与仓库配置整理
- 升级 Target.cs 构建设置到 V7 / EngineIncludeOrderVersion.Unreal5_8
- DynamicIronBlock 温度计算从手动 RHI dispatch 迁移到 RDG (FRDGBuilder + FComputeShaderUtils::Dispatch + FRDGPooledBuffer 包装外部缓冲)
- 移除两个 shader 头中废弃的 SHADER_USE_PARAMETER_STRUCT 宏 (UE5.8 已不需要)
- BladeSmith.uproject: 关联 UE5.8 + 启用 ModelContextProtocol/AllToolsets/MCPClientToolset 插件
- DefaultEngine.ini: r.Substrate=False
- 移除废弃的 DeformAsyncTask.cpp
- 新增项目级 opencode.json (MCP unreal-mcp 配置) 与 .vscode 手写配置 (c_cpp_properties/mcp)
- 整理 .gitignore: 永久排除 AI 工具配置/缓存 (.claude/.codex/.cursor/.gemini/.codegraph/.planning 等)、graphify 缓存、IDE 生成物
- 移出跟踪: .claude/ (含 session-namer 技能)、.vsconfig
2026-08-12 08:57:20 +08:00
starmen1265 68f5f91a08 docs: 添加文档导航索引与 features 范围声明
docs/README.md 作为顶层导航,提供阅读路径推荐(新人/策划/工程师/考古)、需求-设计对应表、边界约定、7 大子系统索引、性能目标。features/hammer-deformation-system.md 顶部加导航头,明确本文档为已交付功能说明,完整需求/设计见对应专题文档。

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-08-11 08:58:58 +08:00
starmen1265 ec5e7556ae docs: 添加应力与疲劳耐久度技术设计
design/06 涵盖四源应力(塑性/热/相变/残余)、扩散松弛、形变阻力、弯曲扭曲与开裂扩展。design/07 涵盖疲劳累积公式、疲劳裂纹、刀具耐久度计算、回火恢复与刀具失效判定。

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-08-11 08:58:47 +08:00
starmen1265 fbb2baa854 docs: 添加物理模拟与淬火系统技术设计
design/04 仅保留加工硬化与晶粒演化,应力/淬火部分引用 design/05、design/06。design/05 涵盖温度区间、冷却速率、Sigmoid 硬度映射、相态系统、三阶段可视化(过程高辨识→冷却过渡→真实回火色)。

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-08-11 08:58:38 +08:00
starmen1265 a9543b5909 docs: 添加几何侧技术设计(刀刃形成/表面磨损/网格质量)
三个对应几何与外观的技术设计。design/01 已包含评估增补(参数语义统一、双区实现回填、流水线协作、形变连续性、碰撞渲染同步、体积守恒策略、性能预算协调),修复了 InverseTransformPosition 法线转换 bug。

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-08-11 08:58:26 +08:00
starmen1265 1514d53df5 docs: 添加材料物理侧需求(硬化/淬火/应力/疲劳)
四个对应材料内部物理过程的需求文档。加工硬化与晶粒演化涵盖越打越硬与回火软化;淬火退火相变涵盖温度区间与三阶段可视化;应力累积涵盖弯曲开裂;疲劳与耐久度涵盖刀具失效。

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-08-11 08:58:15 +08:00
starmen1265 f31518d7e3 docs: 添加玩家行为侧需求(锤击/表面磨损/网格质量)
三个对应玩家直接可见行为的需求文档。锤击形变涵盖各向异性流动与边缘平整;表面磨损涵盖铁锈脱落与无漂移;网格质量承诺连续锻打 50+ 次后无明显退化。

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-08-11 08:58:06 +08:00
starmen1265 4633e866ec docs: 添加锻造系统总体需求与总体技术架构
整合原 01-22 高真实度锻造系统设计与 01-23 淬火退火相变与应力疲劳总览两份重叠文档,拆分为需求侧(玩家/体验视角)与设计侧(技术实现视角)。需求文档不含任何代码与算法名,设计文档定义混合体素-顶点架构、跨子系统共用决策、性能预算。

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-08-11 08:57:55 +08:00
starmen1265 56cb314799 docs: 归档原 plans 目录,迁移实施清单到 impl/
原 docs/plans/ 下的 10 份混合文档(需求+设计混杂)归档到 docs/_archive/plans/ 作为决策考古用途。hammer-deformation-enhancement 实施清单迁移到 docs/impl/。后续工作产出统一进入 docs/requirements/ 与 docs/design/ 两个清晰分层。

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-08-11 08:57:46 +08:00
starmen1265 e8cbf61eba chore: 清理示例资产和更新项目文档
更改内容:
- 删除 Content/Dark_Knight/ 示例资产(不需要的示例内容)
- 更新 CLAUDE.md 为中文版本并扩展内容
  - 添加会话管理提示
  - 完善核心设计原则说明
  - 扩展架构概览和数据流说明
  - 添加调试工具和文档索引
- 更新 .claude/settings.local.json 配置
- 更新 BladeSmith.sln.DotSettings.user

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude (glm-4.7) <noreply@anthropic.com>
2026-03-24 00:23:21 +08:00
starmen1265 c787beee89 docs: 完成测试文档和功能文档
- Task 11: 创建测试场景和验证
  - 创建 docs/tests/hammer-deformation-test-results.md
  - 包含4个测试用例模板
  - 包含性能数据表格和调试工具检查清单

- Task 13: 文档更新
  - 更新 CLAUDE.md 添加阶段1核心系统说明
  - 创建 docs/features/hammer-deformation-system.md
  - 更新架构概览、数据流、关键类关系

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-23 22:50:20 +08:00
starmen1265 07d2a322a4 feat: 添加调试可视化工具和性能优化
- Task 10: 添加调试可视化工具
  - DebugDrawFlowDirections() - 可视化材料流动方向
  - DebugDrawEdgeVertices() - 可视化边缘顶点
  - DebugPrintVertexAttributes() - 输出顶点属性统计信息

- Task 12: 性能优化和参数调优
  - 添加 bEnableAdaptiveOptimization 参数
  - 添加 MinSmoothingInterval 参数
  - 添加 LastHammerImpactTime 追踪
  - 在OnHammerImpact中应用自适应优化逻辑

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-23 22:49:06 +08:00
starmen1265 c6d21201dd feat: 实现打磨度系统和网格质量维护
- Task 7: 实现打磨度在锤击时的更新
  - 在OnHammerImpact中添加打磨度更新逻辑
  - 打磨度与形变量成正比

- Task 8: 更新顶点颜色以编码打磨度
  - 修改UpdateVertexColors函数支持打磨度
  - 添加生锈颜色(深红褐色)到金属颜色(亮银色)的混合
  - 最终颜色 = 温度颜色 * 打磨颜色

- Task 9: 添加基础Laplacian平滑
  - 实现ApplyLaplacianSmoothing函数
  - 在OnHammerImpact中调用平滑以维护网格质量

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-23 22:47:15 +08:00
starmen1265 3c05d0f845 feat: 实现各向异性形变系统和边缘约束
- Task 4: 实现方向检测辅助函数
  - FindNearestFreeEdgeDirection() - 查找最近的自由边界方向
  - CalculatePrimaryFlowDirection() - 计算材料流动的主方向
  - CalculateSecondaryFlowDirection() - 计算次要流动方向

- Task 5: 重构OnHammerImpact以支持各向异性形变
  - 添加材料流动方向计算
  - 在凸起区使用各向异性距离计算
  - 更新累积应变数组

- Task 6: 实现边缘顶点检测和约束
  - MarkEdgeVertices() - 检测并标记边缘顶点
  - ApplyEdgeLinearConstraint() - 对边缘顶点应用线性约束
  - 在OnHammerImpact中集成边缘约束逻辑

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-23 22:44:09 +08:00
starmen1265 bfb9be2256 feat: 添加顶点属性层基础结构和各向异性参数
- Task 1: 添加顶点属性层基础结构
  - 在头文件中添加顶点属性数组声明
  - 添加 InitializeVertexAttributes() 和 ReleaseVertexAttributes() 函数
  - 在 InitializeBoxMesh() 中调用初始化
  - 在 EndPlay() 中调用释放

- Task 2: 实现顶点属性初始化
  - 实现 InitializeVertexAttributes() 函数
  - 实现 ReleaseVertexAttributes() 函数
  - 使用简单数组存储顶点属性(初始位置、累积应变、硬度系数、打磨度)

- Task 3: 添加各向异性流动参数
  - 添加 AnisotropyRatio 参数(各向异性比)
  - 添加 bEnableEdgeConstraint 参数(边缘约束开关)
  - 添加 EdgeThreshold 参数(边缘阈值)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-23 22:41:30 +08:00
zhangqing 10e831efb9 应力设计文档 2026-01-23 18:52:18 +08:00
zhangqing b079f682c9 Merge branch 'main' of http://micecola.top:8418/starmen1265/BladeSmith 2026-01-23 10:41:32 +08:00
zhangqing 1747eb7db7 更新ignore 2026-01-23 10:41:19 +08:00
starmen1265 8c27c82856 新增设计 2026-01-23 00:31:21 +08:00
starmen1265 f7882875c5 新增项目概述 2026-01-21 23:21:13 +08:00
zhangqing 61016f9c2a Add plastic deformation voxel system implementation plan to project
Move plan from user directory to project docs for cross-machine sync.
This plan describes the two-phase GPU-based deformation system:
stress propagation and displacement calculation.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-20 19:29:49 +08:00
zhangqing 5e237b8466 Add vertex deformation quality improvement design
Design document for improving mesh topology and UV quality during
plastic deformation. Uses Laplacian smoothing + edge length constraints
to prevent triangle degradation and texture tearing.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-20 19:23:27 +08:00
zhangqing de8b523c3d 顶点色设置成功,顶点从热力体素采样逻辑需要检查,部分热力区域没有采样到顶点 2025-12-22 18:45:49 +08:00
zhangqing 511f43f2c0 温度到颜色处理 2025-12-10 19:10:26 +08:00
zhangqing bba161810a 增加热辐射颜色处理 2025-12-09 19:03:17 +08:00
zhangqing e647723a7a 调整细节 2025-12-08 18:24:10 +08:00
zhangqing dd16f0123a 实现温度系统CPU-GPU双向同步及调试功能
功能改进:
- HeatRegion后自动上传温度数据到GPU
- Tick中GPU计算后自动下载温度数据到CPU
- DownloadTemperatureDataFromGPU回调中自动更新顶点颜色

调试功能:
- HeatRegion后输出距离Hit点最近的4个体素温度
- 包含体素坐标、距离和温度信息,便于调试温度计算

配置优化:
- 温度更新间隔从0.1秒调整为1.0秒,降低性能开销

技术细节:
- 使用异步任务确保线程安全
- GPU数据上传前检查缓冲区就绪状态
- 完整的CPU↔GPU温度数据同步流程

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-08 18:15:19 +08:00
zhangqing 33d0ff62de 重构温度计算:使用正确的RDG API替代SkipTracking
重构内容:
- 移除SkipTracking标志,使用FRDGPooledBuffer包装外部RHI缓冲区
- 使用RegisterExternalBuffer正确注册外部缓冲区到RDG系统
- 简化lambda捕获列表,移除不需要的SRV/UAV引用
- 添加详细的日志输出以便调试

技术改进:
- RDG系统现在能正确追踪资源依赖和状态转换
- 自动处理内存屏障和资源同步
- 符合UE5最佳实践

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-08 16:46:42 +08:00
zhangqing 8bde527782 合并 2025-12-08 10:45:13 +08:00
starmen1265 3ea9686964 修改shader 2025-12-07 23:50:00 +08:00
starmen1265 0ee31987b5 温度系统 2025-12-07 01:09:28 +08:00
starmen1265 13de51cf5c 实现DynamicIronBlock温度体素系统基础功能
新增功能:
- 添加FTemperatureVoxel结构体(温度、塑性系数、表面标志)
- 实现自适应温度网格(5mm体素精度,基于BoxSize计算分辨率)
- 实现三线性插值温度/塑性系数采样
- 实现黑体辐射温度可视化(顶点颜色)
- 添加HeatRegion蓝图测试函数
- 添加OnHammerImpact锤击形变函数(体积守恒)

技术细节:
- Phase 1: CPU侧温度网格初始化,支持10cm-100cm+可变尺寸
- Phase 3: 温度可视化系统(20°C灰色 → 1200°C白色)
- 内存占用:30×30×30cm ≈ 1.7MB(60×60×60体素)

待实现:Phase 2 GPU热传导计算

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-07 00:47:58 +08:00
starmen1265 39512c45b6 添加DynamicIronBlock类,实现继承自ADynamicMeshActor的动态铁块
- 创建DynamicIronBlock类,支持动态Box网格生成
- 集成BVH加速结构用于快速空间查询
- 添加可配置的Box大小和细分参数
- 更新Build.cs添加GeometryScript相关依赖模块

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-06 00:42:23 +08:00
zhangqing 08d12c4d47 调整灯光,调整材质 2025-12-02 19:08:32 +08:00
zhangqing 6151105119 调整参数 2025-12-01 19:41:08 +08:00
zhangqing b16cad6223 添加HDRI天空,调整铁锈材质效果 2025-12-01 19:08:40 +08:00
zhangqing 065f27169e Merge branch 'main' of http://micecola.top:8418/starmen1265/BladeSmith 2025-11-28 19:06:56 +08:00
zhangqing 5e8af59e4f 制作铁锈材质 2025-11-28 19:06:29 +08:00
starmen1265 47e48d3112 更新 README.md 2025-11-28 17:21:37 +08:00
starmen1265 c2b7ce861e 新增材质 2025-11-28 00:17:40 +08:00
zhangqing 3a2605fbba 圆形锤击生效,解决卡顿,并生成隆起 2025-11-26 19:17:56 +08:00
zhangqing eb35eedc13 实现敲击凹陷 2025-11-25 22:42:38 +08:00
zhangqing 1bd3a370bb 初步尝试BVH 2025-11-24 22:38:36 +08:00
zhangqing a6acab9d0f 接入GeometryScripts,创建形状和碰撞,接入碰撞事件 2025-11-18 22:45:15 +08:00
zhangqing 2b5c8d32ba 合并冲突 2025-11-18 21:40:12 +08:00
starmen1265 8cbe271ca2 试用GeometryScript 2025-11-18 00:17:13 +08:00
zhangqing 3496256e5a 三平面投影研究 2025-11-17 19:24:04 +08:00
starmen1265 f9b8c540e6 尝试三投影法解决接缝问题 2025-11-17 00:33:30 +08:00
starmen1265 1f6067df12 确认可用 2025-11-16 00:44:03 +08:00
starmen1265 82218e6137 尝试删掉placeHodler 2025-11-16 00:41:39 +08:00