Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: baldurk/renderdoc
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v1.x
Choose a base ref
...
head repository: ComplicateCc/renderdoc
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v1.x
Choose a head ref
Checking mergeability… Don’t worry, you can still create the pull request.
  • 6 commits
  • 80 files changed
  • 1 contributor

Commits on Apr 5, 2026

  1. 1 基础设施与项目配置 ✅ 4/4

    2	贴图替换 - 核心逻辑	✅ 6/6
    3	贴图替换 - UI 集成	✅ 5/5
    新创建: TextureReplacer.h, TextureReplacer.cpp
    修改: renderdoc_replay.h (添加 CreateProxyTexture/SetProxyTextureData API)
    修改: replay_controller.h/.cpp (实现 proxy texture 方法)
    修改: TextureViewer.h/.cpp (添加 Replace 按钮 + 状态标签)
    修改: MainWindow.h/.cpp/.ui (菜单入口)
    修改: CaptureContext.cpp (includes)
    修改: .vcxproj / .vcxproj.filters (注册新文件)
    蔡硕 committed Apr 5, 2026
    Configuration menu
    Copy the full SHA
    a6f9872 View commit details
    Browse the repository at this point in the history
  2. agent-harness

    蔡硕 committed Apr 5, 2026
    Configuration menu
    Copy the full SHA
    9c16cae View commit details
    Browse the repository at this point in the history
  3. 修复编译错误

    蔡硕 committed Apr 5, 2026
    Configuration menu
    Copy the full SHA
    fb92450 View commit details
    Browse the repository at this point in the history
  4. 本次改动核心内容

    1. 回退了格式策略(重要修复)
    之前我把 proxy 纹理格式改成了 RGBA8 UNORM,但这会导致 SRV format 不匹配(原始纹理如果是 BC1,replay 时 SRV 尝试以 BC1 格式查看 R8G8B8A8 数据会 D3D 错误)。
    
    现在的策略:
    
    Proxy 纹理使用原始纹理的格式(与 RenderDoc API 文档一致)
    非压缩纹理(如 R8G8B8A8_UNORM):直接上传 RGBA8 数据,大小匹配
    压缩纹理(如 BC1-BC7):先用 GetTextureData 获取原始压缩数据作为基线上传,验证管线可用
    2. 添加了详细的执行日志
    5 步流程追踪:每一步都有 TEX_LOG / TEX_ERR 输出
    日志写入 Diagnostic Log:通过 qWarning → RENDERDOC_LogMessage
    操作结果弹窗:成功/失败都会弹 QMessageBox 告知用户
    3. 查看日志的方法
    操作完成后:
    
    弹窗:会自动弹出成功/失败信息
    Diagnostic Log:菜单 Window → Diagnostic Log 查看完整执行流程
    搜索关键字 TextureReplacer 可以看到所有相关日志
    测试建议
    打开一个 RDC capture
    在 Texture Viewer 中选中一个纹理
    点 "Replace" → "Built-in Textures" → "White"
    观察弹窗信息
    打开 Window → Diagnostic Log 查看完整 Step 1-5 日志
    把日志截图给我,我可以精确定位问题
    已添加到编译技能的新规则
    错误类型	规则
    C4819 Unicode	.cpp 文件中不要使用非 ASCII 字符(如 →、中文等),项目开了 /WX(warning as error)
    tr() not found	非 QObject 类不能用 tr(),用 QStringLiteral() 代替
    蔡硕 committed Apr 5, 2026
    Configuration menu
    Copy the full SHA
    383aba2 View commit details
    Browse the repository at this point in the history

Commits on Apr 6, 2026

  1. 贴图替换功能提交

    d3d11_resources.h - 添加 SwapReal() 到 WrappedDeviceChild11
    resource_manager.h - 添加 GetWrapperMap() 公开接口
    d3d11_replay.cpp - OverrideTextureData 实现三层更新
    renderdoc.i - SWIG typemap 处理 (byte*, size_t) 参数对
    蔡硕 committed Apr 6, 2026
    Configuration menu
    Copy the full SHA
    216eba6 View commit details
    Browse the repository at this point in the history
  2. 贴图替换功能提交

    蔡硕 committed Apr 6, 2026
    Configuration menu
    Copy the full SHA
    23823d0 View commit details
    Browse the repository at this point in the history
Loading