Publisher | Arcadium Playware |
---|---|
File size | 963.22kB |
Number of files | 31 |
Latest version | 1.0.1 |
Latest release date | 2022-03-15 05:52:18 |
First release date | 2022-03-08 03:14:15 |
Supported Unity versions | 2018.4.2 or higher |
FlowShow is an 'extreme' tracing tool, built to empower users with a better understanding of their projects code flow.
From frame zero, FlowShow captures and log every single method execution. You can follow it in real time, directly inside the Unity Editor, on a color highlighted viewer.
FlowShow brings to light all the methods call chain, what called what, with what parameters, return value, owner object, execution count, execution time and more.
This level of detail can be helpful in hunting for bugs, finding performance bottlenecks, measuring code coverage for tests, gaining knowledge on external/legacy code and so on.
You choose exactly what methods to watch and how much to log.
Co-routines, threads, async/await, static, constructors, properties getter/setter, are all fully supported.
Getting too much log? You can find and disable the logging of repetitive code loops or ignore methods by execution count. Start/stop logging from script code, to capture exact game portions.
FlowShow also displays the summarized timings of methods execution, with local and total times - effectively, a profiler specific for tracked methods.
The log stream and the time track can be reset at anytime, even while game is playing inside Unity Editor, allowing the track of specific parts.
The log can be saved, loaded and exported as text file. Add exported text logs to git and be able to spot even tiny differences in the call chain (parameter, timings, etc.) introduced by new project versions.
FlowShow uses its own log engine, built for speed, persisted in binary file stream.
When extra logging performance is needed, FlowShow can switch to full in-memory log (very fast but space limited).
You can insert custom log calling FlowShow.Log(). It's also possible to redirect Unity Engine Debug.Log to FlowShow.
FlowShow needs zero code changes to work: no attributes to add, no classes to inherit.
All required instrumentation is injected directly inside .net DLL files via IL weaving. You can remove it all with one click command.
FlowShow is primarily designed to work while game is being played inside Unity Editor. When building to a platform (via Unity Build Settings window) it's automatically uninstalled.
FlowShow can also be used for editor scripts, windows and inspectors code.
User guide available online here.
FlowShow uses Mono.Cecil library under MIT/X11 license; see Third-Party Notices.txt file in package for details.