Wednesday, March 14, 2012

Telemetry 1.1f released!

Now that the holidays and GDC are behind us we're going to buckle down and get some pretty significant features and changes that our customers have asked for.  But before that we've released 1.1f with a lot of minor fixes and improvements.

Speaking of GDC, it was great meeting so many of our customers and getting positive feedback on Telemetry -- thanks for stopping by the booth!

Run-Time

  • Enhancement: new plot types TMPT_TIME_US and TMPT_TIME_CLOCKS
  • Bugfix: crash bug with Windows DX9 tmxgpu
  • Bugfix: crash bug with TMCT_FILE and OS X
  • Bugfix: tmSetLockStateMinTime wasn't checking some parameters in checked builds
  • Bugfix: if the memory arena passed to tmInitializeContext wasn't zeroed out bad things could happen.  Telemetry now automatically zeroes that memory first.
Visualizer
  • Enhancement: A very basic "search for zone" is implemented using Ctrl-F.  Does not support wildcards and only searches for zones that are currently loaded in memory.  A better implementation is in the works, but enough people asked for this that we've decided to provide this short term implementation.
  • Enhancement: You can now plot a zone's time by right-clicking on it and choosing "Plot zone time".  As with search, you have to make sure that all zones you care about are in memory.  And again, this is a short term solution until we get a global solution in place.
  • Enhancement: "lock to end" supported, so if watching live captures the last frame is visible at all times instead of scrolling off screen.
  • Bugfix: Slow performance when rendering really wide zones 
  • Bugfix: Right-click on some zones and zone types was sketchy
  • Bugfix: Intermittent crashes when viewing a session with a combination of very short and very long frames.
Server
  • Bugfix: rare race condition when accepting multiple profiling sessions from the same machine in less than one second
Misc
  • Bugfix: tmSetLockStateMinTime return values were improperly documented
  • Bugfix: tmSPUBindContextToListener function signature documentation was wrong