]> git.cworth.org Git - apitrace/blobdiff - README.markdown
d3dretrace: Dump D3D8 images too.
[apitrace] / README.markdown
index 4e596cc172269299749ef731132ae03964295570..b1eb08397aa4bf1a64d1db5b2e7cf3dd11248599 100644 (file)
@@ -49,12 +49,10 @@ View the trace with
 
 Replay an OpenGL trace with
 
-    glretrace application.trace
+    apitrace retrace application.trace
 
 Pass the `--sb` option to use a single buffered visual.  Pass `--help` to
-`glretrace` for more options.
-
-EGL traces must be replayed with `eglretrace` instead of `glretrace`.
+`apitrace retrace` for more options.
 
 
 Basic GUI usage
@@ -78,8 +76,8 @@ Call sets
 
 Several tools take `CALLSET` arguments, e.g:
 
-    apitrace dump --calls CALLSET foo.trace
-    glretrace -S CALLSET foo.trace
+    apitrace dump --calls=CALLSET foo.trace
+    apitrace dump-images --calls=CALLSET foo.trace
 
 The call syntax is very flexible. Here are a few examples:
 
@@ -243,6 +241,13 @@ Then run the application as usual.
 You can specify the written trace filename by setting the `TRACE_FILE`
 environment variable before running.
 
+For D3D10 and higher you really must use `apitrace trace -a DXGI ...`. This is
+because D3D10-11 API span many DLLs which depend on each other, and once a DLL
+with a given name is loaded Windows will reuse it for LoadLibrary calls of the
+same name, causing internal calls to be traced erroneously. `apitrace trace`
+solves this issue by injecting a DLL `dxgitrace.dll` and patching all modules
+to hook only the APIs of interest.
+
 
 Emitting annotations to the trace
 ---------------------------------
@@ -297,7 +302,7 @@ Dump GL state at a particular call
 
 You can get a dump of the bound GL state at call 12345 by doing:
 
-    glretrace -D 12345 application.trace > 12345.json
+    apitrace retrace -D 12345 application.trace > 12345.json
 
 This is precisely the mechanism the GUI obtains its own state.
 
@@ -320,7 +325,7 @@ Recording a video with FFmpeg
 
 You can make a video of the output by doing
 
-    glretrace -s - application.trace \
+    apitrace dump-images -o - application.trace \
     | ffmpeg -r 30 -f image2pipe -vcodec ppm -i pipe: -vcodec mpeg4 -y output.mp4
 
 
@@ -354,7 +359,7 @@ table which displays profiling results per shader.
 
 For example, to record all profiling data and utilise the per shader script:
 
-    ./glretrace --pgpu --pcpu --ppd foo.trace | ./scripts/profileshader.py
+    apitrace retrace --pgpu --pcpu --ppd foo.trace | ./scripts/profileshader.py
 
 
 Advanced usage for OpenGL implementors
@@ -377,11 +382,7 @@ These are the steps to create a regression test-suite around **apitrace**:
 
 * prune the snapshots which are not interesting
 
-* to do a regression test, do:
-
-        glretrace -c /path/to/reference/snapshots/ application.trace
-
-  Alternatively, for a HTML summary, use `apitrace diff-images`:
+* to do a regression test, use `apitrace diff-images`:
 
         apitrace dump-images -o /path/to/test/snapshots/ application.trace
         apitrace diff-images --output summary.html /path/to/reference/snapshots/ /path/to/test/snapshots/