You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The DLL paired with `rdc-cli` lives next to `renderdoc.pyd` in
67
-
`renderdoc-py`'s install dir. Verify with `rdc doctor` -- both
68
-
`renderdoc-module` and `win-renderdoc-install` rows should show the same
69
-
version (e.g. 1.41).
59
+
## Recipe
70
60
71
-
Playground accepts the DLL location from any of these (first match wins,
72
-
top-down):
61
+
### Step 1 -- Launch with `--capture=N` under the launcher
73
62
74
-
| Source | Notes |
75
-
|---|---|
76
-
|`--renderdoc-dll=<file-or-dir>`|**Preferred.** Parse-time validated (exit 2 if path missing or directory has no `renderdoc.dll`). Works without `--capture` (lets you confirm what would load). Survives PATH ordering. |
77
-
|`BN_RENDERDOC_DLL` env var | File or directory. Only consulted when `--capture` is set (so a stale env var doesn't silently load RenderDoc into every Playground run). |
78
-
|`RENDERDOC_PYTHON_PATH` env var | Same var rdc-cli already reads -- set it once, both rdc-cli and Playground pick the matching DLL. Only consulted when `--capture` is set. `\renderdoc.dll` is appended automatically. |
79
-
| PATH `LoadLibrary("renderdoc.dll")`| Fallback. Whichever directory PATH resolves first wins. Fragile -- easy to load the wrong version. |
That line appears whenever any of the above resolved. Possible warnings:
86
72
87
-
| Line prefix | Meaning |
88
-
|---|---|
89
-
|`RenderDoc: WARNING: --capture requested but renderdoc.dll could not be loaded.`| None of the four sources found a DLL. Pin one with `--renderdoc-dll=...`. |
90
-
|`RenderDoc: WARNING: loaded DLL differs from RENDERDOC_PYTHON_PATH pair.`| A DLL was loaded, but it doesn't match what rdc-cli expects -> `rdc open` will likely reject the capture. The warning prints the exact `--renderdoc-dll=...` argument to add for a fix. |
91
-
|`RenderDoc: ERROR: --renderdoc-dll=X could not be honored.`| Something (e.g. an injector) had already loaded a different `renderdoc.dll` before `wWinMain` ran. Use the path printed alongside, or relaunch outside the injector. |
73
+
Or with the rdc-cli wrapper (same effect, plus `--trigger` skips the
|`renderdoccmd capture -w`| Inject paired `renderdoc.dll` before `main`; wait for target exit. |
87
+
|`rdc capture --trigger -w`| Same, but explicitly inject-only (no launcher-side auto-capture). |
88
+
|`--capture=N`| Trigger `TestUtils.captureNextFrame()` on the Nth rendered frame of every executed test. Auto-extends the test's render budget by 5 frames after the trigger so RenderDoc has time to finalize. Pixel comparison still happens at the test's original `renderCount`, so pass/fail is unchanged. |
89
+
|`--once`, `--include-excluded`, `--test-index=N`| Standard test selection. |
123
90
124
91
`--capture=5` is a good default: trigger mid-run, plenty of finalize headroom.
125
-
Use a different N if you specifically need a different frame.
0 commit comments