]> git.cworth.org Git - apitrace/blobdiff - README
Accept zero valued bitmasks.
[apitrace] / README
diff --git a/README b/README
index 935ce60ca3ba30e0b6429ab9ca5bd9b142857f5a..8091a414d68f72bafde79f6a7e48d3928be14f10 100644 (file)
--- a/README
+++ b/README
-                                  D3D Trace
+                             API Trace & Retrace
 
 
 = Copyright =
 
-Copyright 2008 Jose Fonseca, Tungsten Graphics, Inc.
+Copyright 2011 Jose Fonseca, Zack Rusin
+Copyright 2008-2010 VMware, Inc.
+All Rights Reserved.
 
-This program is free software: you can redistribute it and/or modify it
-under the terms of the GNU Lesser General Public License as published
-by the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
 
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU Lesser General Public License for more details.
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
 
-You should have received a copy of the GNU Lesser General Public License
-along with this program.  If not, see <http://www.gnu.org/licenses/>.
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
 
 
 = About =
 
-Wrapper DLLs to trace D3D8 and D3D9 APIs calls.
-
-Based on the idea from Michael Koch. 
-
-See also:
-* http://www.mikoweb.eu/index.php?node=21
-* http://www.codeguru.com/cpp/g-m/directx/directx8/article.php/c11453/
-* http://doc.51windows.net/Directx9_SDK/?url=/directx9_sdk/graphics/programmingguide/TutorialsAndSamplesAndToolsAndTips/Tools/D3DSpy.htm
+This includes a set of tools for:
+- trace OpenGL, D3D8, and D3D9 APIs calls to a file;
+- retrace OpenGL calls from a file;
+- visualize trace files, and inspect state.
 
 
 = Status =
 
-* Only Direct3D 8 and 9 are supported at the moment.
-* It has not been tested with many applications. Bugs may cause the application to crash. 
+* It has not been tested with many applications. Bugs in less used features may
+  cause application crashes.
+* Direct3D 8 support is currently broken.
+* No Direct3D retrace support
 
 
 = Building from source =
 
+Requirements common for all platforms:
+* Python (requires version 2.6)
+* CMake (tested with version 2.8)
+
+Requirements to build the GUI (optional):
+* Qt (tested with version 4.7)
+* QJSON (tested with version 0.7.1)
+
+
+== Linux ==
+
+Build as:
+
+ cmake -H. -Bbuild
+ make -C build
+
+
+== Windows ==
+
 Requirements:
-* Python (tested with version 2.5)
-* SCons (tested with 0.98.4)
-* Microsoft Visual Studio (tested with 2005 version)
-* Microsoft DirectX SDK (tested with August 2007 release)
 
-Instructions:
+* Microsoft Visual Studio (tested with 2008 version) or MinGW (tested with gcc version 4.4)
 
-* Invoke scons:
+* Microsoft DirectX SDK (tested with August 2007 release)
 
- scons debug=no dxsdk=C:\DXSDK
-* You can write those options to a file named config.py:
+To build with Visual Studio invoke CMake as:
 
- # config.py
- debug=1
- dxsdk='C:\\DXSDK'
+ cmake -G "Visual Studio 9 2008" -H. -Bbuild
+ cmake --build build --config MinSizeRel
  
-* Invoke
+It's also possible to build on Linux with MinGW cross compilers.  See
+http://www.cmake.org/Wiki/CmakeMingw for detailed instructions.
 
-  scons -h
 
-See the scons manpage for more info.
+= Usage =
 
 
-= Usage =
+== Linux ==
+
+* Run the application you want to trace as
+
+ LD_PRELOAD=/path/to/glxtrace.so /path/to/application
+
+* View the trace with
+
+ /path/to/dump application.trace
+
+* Replay the trace with
+
+ /path/to/glretrace application.trace
+
+
+== Windows ==
+
+* Copy opengl32.dll, d3d8.dll, or d3d9.dll from build/wrappers directory to the
+  directory with the application you want to trace.
 
-* Copy d3d8.dll/d3d9.dll, d3dtrace.xsl, d3dtrace.css to the directory with the application you want to trace.
 * Run the application.
-* Open the output XML file with Firefox or Internet Explorer to view the log.
-* For long XML files is better to use the d3dtrace-txt.xsl stylesheet together with a dedicated XSL processor like xsltproc, or msxsl.
 
+* View the trace with
+
+ /path/to/dump application.trace
+
+* Replay the trace with
+
+ /path/to/glretrace application.trace
+
+
+= Links =
+
+* http://jrfonseca.blogspot.com/2008/07/tracing-d3d-applications.html
+
+
+== Direct3D ==
+
+ * [http://www.mikoweb.eu/index.php?node=21 Proxy DLL]
+   * [http://www.codeguru.com/cpp/g-m/directx/directx8/article.php/c11453/ Intercept Calls to DirectX with a Proxy DLL]
+ * [http://doc.51windows.net/Directx9_SDK/?url=/directx9_sdk/graphics/programmingguide/TutorialsAndSamplesAndToolsAndTips/Tools/D3DSpy.htm D3DSpy]
+ * [http://msdn.microsoft.com/en-us/library/ee417062.aspx PIX]
+
+
+== OpenGL ==
 
+ * [http://www.opengl.org/sdk/tools/BuGLe/ BuGLe]
+ * [http://glintercept.nutty.org/ GLIntercept]
+ * [http://www.gremedy.com/products.php gDEBugger]