示例#1
0
        public void AddTimeTest()
        {
            var t1 = new Time(1, 15, 30, 500);
            var t2 = new Time(0, 45, 30, 500);

            t1.AddTime(t2);
            t2 = new Time(2, 1, 1, 0);
            Assert.AreEqual(t2, t1);
        }
示例#2
0
 void PlaybacAudiokDevice_AudioMediaDataPlayEnded(object sender, EndedEventArgs e)
 {
     mElapsedTime.AddTime(e.getEndTime());
     if (mContinueAfterTreeNode)
     {
         mCurrentTreeNode = mTreeNodeNavigator.GetNext(mCurrentTreeNode);
         play();
     }
 }
示例#3
0
        protected override void OnRenderFrame(FrameEventArgs e)
        {
            base.OnRenderFrame(e);
            Time.AddTime((float)e.Time);
            DateTime frameStart = DateTime.Now;

            PostProcessing.GetInstance().PreRender();
            Render();
            PostProcessing.GetInstance().Prepare2D();
            Render2D();
            PostProcessing.GetInstance().PostRender();

            this.SwapBuffers();

            if (GlobalSettings.Default.improvedLatency)
            {
                GL.Finish();
            }

            #region "Framerate logic"
            DateTime frameEnd = DateTime.Now;
            if (GlobalSettings.Default.frameCap > 0 && (frameEnd - frameStart).TotalMilliseconds < 1000.0f / GlobalSettings.Default.frameCap)
            {
                Thread.Sleep((int)((1000.0f / GlobalSettings.Default.frameCap) - (frameEnd - frameStart).TotalMilliseconds));
            }
            ++framesLastSecond;

            Time.lastFrameTime = (frameEnd - frameStart).TotalSeconds;

            if ((DateTime.Now - lastFrameCollection).TotalMilliseconds >= 1000)
            {
                OneSecondPassed();
                //Logging.Write(1000.0f/(frameEnd-frameStart).TotalMilliseconds + "FPS");
                for (int i = 0; i < 99; ++i)
                {
                    frameRateGraph[i + 1] = frameRateGraph[i];
                }
                frameRateGraph[99]  = (int)(1000.0f / (frameEnd - frameStart).TotalMilliseconds);
                framesLastSecond    = 0;
                lastFrameCollection = DateTime.Now;
            }
            #endregion
            if (firstFrameRendered)
            {
                return;
            }
            firstFrameRendered = true;
        }