User Guide

API Reference
Session Macros
Scope Macros
Frame Stat Macros
HiRes Timer Macros
Main Toolbar
Threads View
Scopes View
Frame Stats View
Using FramePro with Unreal Engine UE4
PureDev Logo FramePro logo
Real-time C++ Profiler


  1. Connect to a running application that has been built with FramePro.cpp
  2. Disconnect
  3. Jump to the start of the session
  4. Toggle tracking the end of the session (if connected)
  5. Jump to the end of the session
  6. Toggle the info data panel visibility
  7. Toggle the Frame graph visibliity
  8. Toggle the scope graph visibility
  9. Toggle the core graph visibliity
  10. Jump to the previous frame spike
  11. Jump to the next frame spike
  12. Highlight scopes containing this string in the thread and core graphs. Arrow buttons jump to prev/next
  13. Set the scope Threshold (see below)

Scope Threshold

Note: This only applies to Conditional Scopes (eg. FRAMEPRO_CONDITIONAL_SCOPE())

Conditional Scopes will not be sent to FramePro if their duration is below this value. Conditional scopes are useful for scopes that are slow to generate, such as generating a complex name string. The expensive conditional scope will only be generated if its duration is above this threshold value. While connected, you can reduce this value to show more of the conditional scopes, but be aware this can affect performance of your game.

An example of use for this would be profiling script functions if the script function name is complex and slow to generate (from multiple string operations). Usually, you only want to see the scopes of script functions that are taking a long time, so use a conditional scope and only those functions which take longer than this threshold will be sent.

© Copyright 2016 PureDev Software