This post serves as a quick start guide of how you can add the PVRTrace libraries to your own OpenGL ES application and begin capturing traces. We will use the PowerVR SDK example applications to demonstrate the process.

PowerVR SDK - reflection + chromatic dispersion (1)

We will be attaching the trace libraries to Windows 32-bit applications here. Dynamically linked libraries are also provided for all other platforms, which can be found in the logically named sub-folders.

Step 1: From the PowerVR_SDK installation directory, navigate to “Binaries/Windows_x86_32/Examples”. Choose any example application, this will be the application that we will be working with.

Step 2: Find: “PowerVR_Tools/PVRTrace/Recorder/Windows_x86_32”

Copy the trace libraries:

libEGL.dll
libGLES_CM.dll
libGLESv1_CM.dll
libGLESv2.dll
PVRTrace.dll

to the folder containing the executable.

Step 3: Find: “PowerVR_Tools/PVRVFrame/Library/Windows_x86_32”

Copy the VFrame libraries:

libEGL.dll
libGLES_CM.dll
libGLESv2.dll

to a new sub-folder named /PVRVFrameLibs in the executable folder.

 

Step 4: Create a new file named “pvrtraceconfig.json” in the executable folder, with the following contents:

{
  "*": {
    "Tracing": {
      "StartFrame": 0,
      "EndFrame": 9999
    },
    "Host": {
      "EglLibraryPath": "PVRVFrameLibs/libEGL.dll",
      "Es1LibraryPath": "PVRVFrameLibs/libGLES_CM.dll",
      "Es2LibraryPath": "PVRVFrameLibs/libGLESv2.dll"
    }
  }
}

Please note, prior to SDK 3.5 the format of the config was different. If you are using tracing libraries from SDK 3.4 or older you will need to use the following config instead:

{
  "Tracing": {
    "StartFrame": 0,
    "EndFrame": 9999
  },
  "Host": {
    "EglLibraryPath": "PVRVFrameLibs/libEGL.dll",
    "Es1LibraryPath": "PVRVFrameLibs/libGLES_CM.dll",
    "Es2LibraryPath": "PVRVFrameLibs/libGLESv2.dll"
  }
}

Step 5: That’s it! Run the executable, and the trace libraries should now begin writing to a file named “<executable-name>.pvrt”

We’ve also made a batch file that can be dropped in next to any Windows 32-bit executable in the PowerVR_SDK folder. Download  and run it – it will copy in the required trace libraries and create the pvrtraceconfig.json file for you, ready to begin tracing.

 

PowerVR SDK - reflection + chromatic dispersion (2)

Additional information, including more detailed configuration options, can be found in the PVRTrace User Manual, included in the SDK.

Comments

  • Ondrej

    Seems to me like there’s an extra {: in the second line of the pvrtraceconfig.json example in step 4.

    • Hi Ondrej, thank you for spotting that: now corrected.

    • And FYI, we’ve just made some further edits, so should be clearer now!