GAPID is a Graphics API Debugger.
Use GAPID to diagnose GPU issues when developing graphical applications.
GAPID lets you capture, inspect, and adjust traces of your app's graphics driver calls. This helps you to:
- Identify rendering issues, such as missing objects or object size and texture problems.
- Inspect the resources loaded by the graphics API.
- Make adjustments to resources like shaders or commands and observe the results live.
Supported platforms and APIs
Android | Windows | macOS | Linux | |
---|---|---|---|---|
OpenGL ES Trace | ✔ | |||
OpenGL ES Replay | ✔ | ✔ | ✔ | |
Vulkan Trace | ✔ | ✔ | ✔ | |
Vulkan Replay (Must be performed on the same device used to trace) |
✔ | ✔ | ✔ |
The GAPID interface
The GAPID interface lets you analyze resources and commands when investigating issues.
Rendering context and frames
Select a rendering context to see frames in a film-strip view.
Commands
Review graphics API calls made by the application, grouped by frame and draw
call or by user markers.
Framebuffer
Pinpoint the source of rendering errors by viewing the contents of the
currently bound framebuffer.
Geometry
View the pre-transformed mesh of a selected draw call.
Rotate or zoom in on the model. Change the rendering mode to investigate issues
or export a model as an .obj
file.
Textures
See all of the texture resources created up to and including
a selected command.
Shaders
View and iterate on shaders in your application. See all:
- Shaders created by the program
- Linked Vertex/Fragment programs
- Bound uniform values
Edit your shaders and see the results directly within GAPID.
Report
Review a log of issues, including incorrect API usage or problems that GAPID
encounters while replaying your graphics trace.
State
See the driver state immediately after executing a selected command.
Download and start using GAPID
- Download GAPID from the GAPID releases page on GitHub.
- Learn more about using GAPID.
- See GAPID on GitHub for details on cloning and building GAPID.