Exemplo n.º 1
0
        private void renderThreadMain()
        {
            while (run)
            {
                if (pause)
                {
                    renderThreadLock = true;
                }
                else
                {
                    renderThreadLock = false;
                    renderThreadTimer.startUpdate();

                    generateFrame();
                    inputManager.Update();
                    frameData.camera = Camera.UpdateMovement(frameData.camera, inputManager);

                    frame.write(ref output);

                    renderThreadLock = true;
                    renderThreadTimer.endUpdateForTargetUpdateTime((1000.0 / targetFPS), true);
                }
            }
        }
Exemplo n.º 2
0
        public void updateFrame()
        {
            if (rtRenderer != null)
            {
                if (readyForUpdate)
                {
                    displayTimer.endUpdate();
                    displayTimer.startUpdate();
                    FPS.Content = rtRenderer.device.AcceleratorType.ToString() + " "
                                  + (rtRenderer.renderThreadTimer.averageUpdateRate <= displayTimer.averageUpdateRate
                        ? ((int)(rtRenderer.renderThreadTimer.averageUpdateRate) + " FPS GPU LIMITED")
                        : ((int)displayTimer.averageUpdateRate + " FPS WPF LIMITED")) + (debugTAA && !debugZbuffer ? " TAA  ON" : " TAA OFF");
                    camera.Content      = string.Format("Pos: {0:0.##}, {1:0.##} {2:0.##}", rtRenderer.frameData.camera.origin.x, rtRenderer.frameData.camera.origin.y, rtRenderer.frameData.camera.origin.z);
                    debug.Content       = "[ " + width + ", " + height + " ]" + " SF: " + scale;
                    renderScale.Content = "Scale Factor: " + scale;
                    taaLabel.Content    = debugTAA && !debugZbuffer?string.Format("TAA ON # {0:0.##}", debugTAAScale) : "TAA OFF";

                    taaDistLabel.Content = debugTAA && !debugZbuffer?string.Format("TAA dist {0:0.##}", debugTAADistScale) : "TAA OFF";

                    frame.update();
                }
                readyForUpdate = false;
            }
        }