private void Update() { counter++; if (counter % 30 == 0) { //System.GC.Collect(); //System.GC.WaitForPendingFinalizers(); GizmoSDK.GizmoBase.Monitor.AddValue("mem", MemoryControl.GetAllocMem()); GizmoSDK.GizmoBase.Monitor.AddValue("internal", MemoryControl.GetAllocMem(0, 0, false, true)); GizmoSDK.GizmoBase.Monitor.AddValue("dyn", MemoryControl.GetAllocMem(66666)); } if (counter % 1000 == 0) { Performance.DumpPerformanceInfo(); } }
private void Update() { double time = GizmoSDK.GizmoBase.Time.SystemSeconds; if (_frameTime > 0) { _frameDurationTime = 0.999 * _frameDurationTime + 0.001 * (time - _frameTime); } _frameTime = time; try { Performance.Enter("Initializer.Update"); // Example of getting performance graphical output #if SHOW_TRACERS if (_counter == 10) { tracer = new PerformanceTracer(); tracer.AddAll(); tracer.Run(); } #endif // SHOW_TRACERS _counter++; // Exemple of getting allocate dmemory in native parts #if SHOW_MEMORY if (_counter % 30 == 0) { //System.GC.Collect(); //System.GC.WaitForPendingFinalizers(); GizmoSDK.GizmoBase.Monitor.AddValue("mem", MemoryControl.GetAllocMem()); GizmoSDK.GizmoBase.Monitor.AddValue("internal", MemoryControl.GetAllocMem(0, 0, false, true)); GizmoSDK.GizmoBase.Monitor.AddValue("dyn", MemoryControl.GetAllocMem(66666)); GizmoSDK.GizmoBase.Monitor.AddValue("tex", Image.GetRegisteredImageData()); } #endif //SHOW_MEMORY #if SHOW_FPS if (_counter % 30 == 0) { GizmoSDK.GizmoBase.Monitor.AddValue("fps", 1 / _frameDurationTime); } #endif //SHOW_FPS } finally { Performance.Leave(); } }