Development log: May 26, 2009
Performance profiler for scripts, improved grass
- Performance analyzer for UnigineScript (in GProf style).
- Refactored grass (significantly improved performance, support of different shapes, more adjustable parameters).
- Improved render precision for distant areas.
- Postprocesses don't affect wireframe visualization now.
- Performance optimization of LightWorld.
- Recursive preprocessing of namespaces in UnigineScript, no more forward declarations.
- Warnings on wrong arguments for functions with arbitrary number of arguments in UnigineScript.
- Added billboard flag in ObjectGui.
- Support of OGA and OGV file extensions for audio and video files in OGG format.
To see the performance analyzer output, type "world_analyze" (world script) or "system_analyze" (system script) or "editor_analyze" (editor script) in the console:
If you want to dump this output into a file, pass its name as an argument: "world_analyze logfile". The perfomance analyzer works only with debug builds. The following counters are available:
- total seconds (this is the total number of seconds the interpreter spent executing this function)
- self seconds (this is the number of seconds accounted for by this function alone, without internal calls of other functions)
- calls (this is the total number of times the function was called)
- total ms/call (this represents the average number of milliseconds spent in this function and its descendants per call)
- self ms/call (this represents the average number of milliseconds spent in this function per call)
Output is sorted by "self seconds" field.
PS: There is also a component-based game framework almost ready, it will be soon delivered to our customers.
PPS: We have updated our public demos, Tropics 1.2 and Sanctuary 2.2 can be downloaded from our website.