示例#1
0
        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();
            }
        }