Esempio n. 1
0
        protected override void LoadContent()
        {
            #region Effects

            depthMapEffect = EffectManager.Load<DepthMapEffect>();
            depthOfFieldEffect = EffectManager.Load<DofEffect>();

            #endregion

            #region Back buffers

            const int depthMapSampleQuality = 0;

            var pp = GraphicsDevice.PresentationParameters;
            var width = (int) (pp.BackBufferWidth * Settings.MapScale);
            var height = (int) (pp.BackBufferHeight * Settings.MapScale);

            depthMapBackBuffer = BackBufferManager.Load("DepthMap");
            depthMapBackBuffer.Width = width;
            depthMapBackBuffer.Height = height;
            depthMapBackBuffer.MipMap = false;
            depthMapBackBuffer.SurfaceFormat = depthMapFormat;
            depthMapBackBuffer.DepthFormat = DepthFormat.Depth24Stencil8;
            depthMapBackBuffer.MultiSampleCount = depthMapSampleQuality;
            depthMapBackBuffer.Enabled = Enabled;

            bluredSceneMapBackBuffer = BackBufferManager.Load("BluredSceneMap");
            bluredSceneMapBackBuffer.Width = width;
            bluredSceneMapBackBuffer.Height = height;
            bluredSceneMapBackBuffer.MipMap = false;
            bluredSceneMapBackBuffer.SurfaceFormat = SurfaceFormat.Color;
            bluredSceneMapBackBuffer.MultiSampleCount = 0;
            bluredSceneMapBackBuffer.Enabled = Enabled;

            #endregion

            #region Gaussian blur

            gaussianBlur = new GaussianBlur(RenderContext, width, height, bluredSceneMapBackBuffer.SurfaceFormat);
            gaussianBlur.LoadContent();
            gaussianBlur.Enabled = Enabled;

            #endregion

            base.LoadContent();
        }
Esempio n. 2
0
        protected override void LoadContent()
        {
            #region Effects

            bloomExtractEffect = EffectManager.Load<BloomExtractEffect>();
            bloomEffect = EffectManager.Load<BloomEffect>();

            #endregion

            #region Back buffers

            var pp = GraphicsDevice.PresentationParameters;
            var width = (int) (pp.BackBufferWidth * Settings.MapScale);
            var height = (int) (pp.BackBufferHeight * Settings.MapScale);

            bloomExtractMapBackBuffer = BackBufferManager.Load("BloomExtractMap");
            bloomExtractMapBackBuffer.Width = width;
            bloomExtractMapBackBuffer.Height = height;
            bloomExtractMapBackBuffer.MipMap = false;
            bloomExtractMapBackBuffer.SurfaceFormat = pp.BackBufferFormat;
            bloomExtractMapBackBuffer.DepthFormat = DepthFormat.Depth24Stencil8;
            bloomExtractMapBackBuffer.MultiSampleCount = 0;
            bloomExtractMapBackBuffer.Enabled = Enabled;

            #endregion

            #region Gaussian blur

            gaussianBlur = new GaussianBlur(RenderContext, width, height, bloomExtractMapBackBuffer.SurfaceFormat);
            gaussianBlur.LoadContent();
            gaussianBlur.Enabled = Enabled;

            #endregion

            base.LoadContent();
        }
        protected override void LoadContent()
        {
            if (ContentLoaded)
            {
                return;
            }

            basicShadowMapEffect = EffectManager.Load<ShadowMapEffect>();
            vsmShadowMapEffect = EffectManager.Load<ShadowMapEffect>(RenderConstants.VsmShadowMapEffectAssetName);
            vsmShadowMapBlur = new GaussianBlur(RenderContext, ShadowSettings.Size, ShadowSettings.Size, ShadowSettings.Format);
            vsmShadowMapBlur.LoadContent();

            vsmSceneEffect = EffectManager.Load<VsmSceneEffect>();
            pcfSceneEffect = EffectManager.Load<PcfSceneEffect>();
            classicShadowSceneEffect = EffectManager.Load<ClassicShadowSceneEffect>();

            shadowMapBackBuffer = BackBufferManager.Load("ShadowMap");
            shadowMapBackBuffer.Width = ShadowSettings.Size;
            shadowMapBackBuffer.Height = ShadowSettings.Size;
            shadowMapBackBuffer.MipMap = false;
            shadowMapBackBuffer.SurfaceFormat = ShadowSettings.Format;
            shadowMapBackBuffer.DepthFormat = DepthFormat.Depth24Stencil8;
            shadowMapBackBuffer.MultiSampleCount = 0;
            shadowMapBackBuffer.Enabled = false;

            base.LoadContent();
        }
        protected override void UnloadContent()
        {
            if (vsmShadowMapBlur != null)
            {
                vsmShadowMapBlur.Dispose();
                vsmShadowMapBlur = null;
            }

            base.UnloadContent();
        }
        protected override void LoadContent()
        {
            #region Effects

            screenSpaceShadowEffect = EffectManager.Load<ScreenSpaceShadowEffect>();

            #endregion

            #region Back buffers

            var pp = GraphicsDevice.PresentationParameters;
            var mapScale = ShadowSettings.ScreenSpaceShadow.MapScale;
            var width = (int) (pp.BackBufferWidth * mapScale);
            var height = (int) (pp.BackBufferHeight * mapScale);
            var format = SurfaceFormat.Color;

            shadowSceneMapBackBuffer = BackBufferManager.Load("ShadowSceneMap");
            shadowSceneMapBackBuffer.Width = width;
            shadowSceneMapBackBuffer.Height = height;
            shadowSceneMapBackBuffer.MipMap = false;
            shadowSceneMapBackBuffer.SurfaceFormat = format;
            shadowSceneMapBackBuffer.DepthFormat = DepthFormat.Depth24Stencil8;
            shadowSceneMapBackBuffer.MultiSampleCount = 0;
            shadowSceneMapBackBuffer.Enabled = false;

            #endregion

            #region Blur

            screenSpaceBlur = new GaussianBlur(RenderContext, width, height, format);
            screenSpaceBlur.LoadContent();

            #endregion

            base.LoadContent();
        }