Пример #1
0
        /// <summary>
        /// Allocates DirectX resources and attaches to render events.
        /// </summary>
        private void EnableStats()
        {
            Log("Try get Device");
            _device = SkinContext.Device;
            if (_device == null)
            {
                return;
            }

            _swapChain   = _device.GetSwapChain(0);
            _swapChainEx = new SwapChain9Ex(_swapChain.NativePointer);
            _line        = new Line(_device)
            {
                Width = 2.5f, Antialias = true
            };

            _fontSprite = new Sprite(_device);
            _font       = new Font(_device, TEXT_SIZE, 0, FontWeight.Normal, 0, false, FontCharacterSet.Default, FontPrecision.Default, FontQuality.ClearTypeNatural, FontPitchAndFamily.DontCare, "tahoma");

            // Get device info
            _adapterDisplayModeEx = SkinContext.Direct3D.GetAdapterDisplayModeEx(0);
            Log("Screen height {0} at refresh rate {1} Hz", _adapterDisplayModeEx.Height, _adapterDisplayModeEx.RefreshRate);

            Log("Attach render events");
            SkinContext.DeviceSceneBegin += BeginScene;
            SkinContext.DeviceSceneEnd   += EndScene;
            _statsEnabled = true;
        }