/// <summary>
        /// Initializes a new instance of the <see cref="ImmediateContextRenderer"/> class.
        /// </summary>
        /// <param name="deviceResource">The deviceResource.</param>
        public ImmediateContextRenderer(IDevice3DResources deviceResource)
        {
#if DX11_1
            ImmediateContext = Collect(new DeviceContextProxy(deviceResource.Device.ImmediateContext1, deviceResource.Device));
#else
            ImmediateContext = Collect(new DeviceContextProxy(deviceResource.Device.ImmediateContext, deviceResource.Device));
#endif
            transparentRenderCore = Collect(new OrderIndependentTransparentRenderCore());
            postFXAACore          = Collect(new PostEffectFXAA());
        }
            /// <summary>
            /// Initializes a new instance of the <see cref="ImmediateContextRenderer"/> class.
            /// </summary>
            /// <param name="deviceResource">The deviceResource.</param>
            public ImmediateContextRenderer(IDevice3DResources deviceResource)
            {
#if DX11_1
                immediateContext = new DeviceContextProxy(deviceResource.Device.ImmediateContext1, deviceResource.Device);
#else
                immediateContext = new DeviceContextProxy(deviceResource.Device.ImmediateContext, deviceResource.Device);
#endif
                oitWeightedCore     = new OrderIndependentTransparentRenderCore();
                oitDepthPeelingCore = new OITDepthPeeling();
                postFXAACore        = new PostEffectFXAA();
                preSSAOCore         = new SSAOCore();
            }