]> git.cworth.org Git - apitrace/blobdiff - TODO
Remove spurious tag in snapdiff output.
[apitrace] / TODO
diff --git a/TODO b/TODO
index 5311e87a9aab25deb476a30598197f8708cc3866..97ca506b78733968447481c47a6f2fc0febb45ca 100644 (file)
--- a/TODO
+++ b/TODO
@@ -2,14 +2,7 @@
                             (in no particular order)
 
 
-* Determine blob sizes passed to glXxxPointer functions.
-
-  Potentially using tricks such as:
-  * http://fixunix.com/linux/337646-isbadreadptr-linux.html
-  * http://www.gamedev.net/community/forums/topic.asp?topic_id=132787
-  * http://msdn.microsoft.com/en-us/library/aa366781(v=VS.85).aspx
-  * http://msdn.microsoft.com/en-us/library/aa366902(v=VS.85).aspx
-  * http://stackoverflow.com/questions/1281686/determine-size-of-dynamically-allocated-memory-in-c
+Tracing:
 
 * Allow clamping to a GL version or a number of extensions.
 
 
 * Trace TSCs
 
-* Retrace multiple threads (which will imply abandoning GLUT)
+* Trace window sizes somehow
+
+* Allow to distinguish between the calls really done by the program, vs the
+  fakes one necessary to retrace correctly.
+
+* Trace writes done through glMapBuffer and glMapBufferRange correctly
+
+* Start tracing on demand (e.g., key-press, or by frame no), emitting calls
+  that recreate all current state.
+
+* Add option to include call stack frames in the trace
+
+
+Retracing:
+
+* Use visuals that best match those used in the trace; specially auto
+  detect single/double buffer visuals.
+
+* Support multiple contexts
+
+* Support multiple threads
 
 * Provide a readline-like interactive mode to gltrace
   * http://github.com/antirez/linenoise
     * https://github.com/antirez/linenoise/issues#issue/8
   * http://hg.youterm.com/radare/file/87579f8c5087/src/dietline.c 
 
-* Trace window sizes somehow
+* Plug memory leaks.
 
-* Add new mode to compare with previous snapshots instead of writing.
+* Allow to retrace with two libGL.so in parallel, and output differences in
+  rendered frames / draw calls.
 
-* Plug memory leaks.
+* D3D support.
+
+
+GUI:
+
+* Trace editing.
+
+* Timeline view.
+
+* Visualize meshes in draw commands.
+
+
+Other:
+
+* Side-by-side trace diffing; either as a separate tool on or the GUI.
+
+* Side-by-side state diffing.
+
+* Ability to extract just a single frame from a trace, and all previous calls
+  that contributed to it:
+
+  * via a state tracker (i.e., knowledge of how calls affect the state);
+
+  * or by leveragine retrace, dumping the calls to emit all state at beginning
+    of the frame.
+
+* MacOSX support.
+
+
+See also FIXME, TODO, and XXX comments on the source code.