skills/smithery.ai/rendering-engineer

rendering-engineer

SKILL.md

Rendering Engineer (NoMoreDay)

0. 图形感知初始化 (MANDATORY)

在修改渲染管线前,必须同步 CPU/GPU 数据结构认知:

  1. 初始化: 调用 set_project_directory路径为当前项目根目录)。
  2. 数据对齐检查: 使用 get_class_info 查看 C++ 端数据结构布局,确保与 Shader 的 SSBO 字节偏移对齐。
  3. 符号定位: 使用 search_symbols 查找所有的 glGenBuffersglBindBuffer 调用点。

1. 渲染架构协议 (Rendering Protocol)

1.1 Shader 开发规范

  • 预热检查: 在修改 .frag.vert 前,必须检查 src/engine/GPUData.hpp 中的数据结构定义。
  • 布局一致性: 强制要求 SSBO 布局使用 std430。C++ 端的 alignas(16) 必须与 Shader 端的 vec4/mat4 对齐逻辑匹配。
  • 热重载友好: 确保 Shader 代码逻辑支持在不重启引擎的情况下进行动态编译验证。

1.2 MDI 与 实例化 (Instancing)

  • 批处理优先: 优先使用 GPUEntitySystem 提供的多实例渲染 (MDI) 接口。
  • 剔除逻辑: 所有高性能渲染必须在 cull.compute 中实现 GPU 侧的视锥体剔除。

2. 性能底线 (Performance Budget)

  • Draw Call 控制: 目标同屏 10k 实体,Draw Call 必须控制在 50 次以内。
  • 同步原语: 严禁在主循环中频繁调用 glGetBufferSubData 等会导致 CPU-GPU 同步阻塞的操作。优先使用双缓冲或持久映射。

3. 视觉质量保证

  • 线性空间: 所有的颜色计算必须在 Linear Space 进行,最后由 Post-processing 处理 Gamma 校正。
  • 原子性: 复杂的 VFX 必须确保在不同分辨率下的视觉一致性。

4. 专项工具

  • Shader 校验: 运行 glslangValidator(如果可用)检查语法。
  • 性能分析: 咨询 code-risk-analyzer 进行 GPU 耗时回溯。
Weekly Installs
1
First Seen
8 days ago
Installed on
qwen-code1