예제 #1
0
        public GBufferRenderer(IGraphicsService graphicsService, SceneNodeRenderer sceneNodeRenderer, DecalRenderer decalRenderer)
        {
            _clearGBufferRenderer = new ClearGBufferRenderer(graphicsService);
            _sceneNodeRenderer    = sceneNodeRenderer;
            _decalRenderer        = decalRenderer;

            // This filter is used to downsample the depth buffer (GBuffer0).
            _downsampleFilter = PostProcessHelper.GetDownsampleFilter(graphicsService);
        }
예제 #2
0
        public DownsampleSample(Microsoft.Xna.Framework.Game game)
            : base(game)
        {
            // Create a DownsampleFilter which downsamples the current screen to a 64x64 pixel buffer.
            _downsampleFilter = new DownsampleFilter(GraphicsService)
            {
                // The PostProcessorChain reads the DefaultTargetFormat property. Here,
                // we can define the downsampled resolution.
                DefaultTargetFormat = new RenderTargetFormat(64, 64, false, SurfaceFormat.Color, DepthFormat.None),
            };
            GraphicsScreen.PostProcessors.Add(_downsampleFilter);

            // This CopyFilter copies the downsampled image to the back buffer.
            _copyFilter = new CopyFilter(GraphicsService);
            GraphicsScreen.PostProcessors.Add(_copyFilter);
        }