예제 #1
0
 public BlurStageRenderer(IFrameworkMessenger frameworkMessenger,
                          IDownSamplingRenderer blurSamplingRenderer,
                          ISinglePassGaussianBlurRenderer singlePassGaussianBlurRenderer,
                          IBlurResultMixingRenderer blur2DResultMixingRenderer,
                          IFullNdcSpaceQuadVertexBuffer ndcSpaceQuadVertexBuffer)
 {
     _frameworkMessenger             = frameworkMessenger;
     _blurSamplingRenderer           = blurSamplingRenderer;
     _singlePassGaussianBlurRenderer = singlePassGaussianBlurRenderer;
     _blur2DResultMixingRenderer     = blur2DResultMixingRenderer;
     _ndcSpaceQuadVertexBuffer       = ndcSpaceQuadVertexBuffer;
 }
예제 #2
0
        public CustomShaderStageRenderer(IFrameworkMessenger frameworkMessenger,
                                         IViewportManager viewportManager,
                                         IFullNdcSpaceQuadVertexBuffer ndcQuadVertexBuffer,
                                         IGpuSurfaceManager gpuSurfaceManager
                                         )
        {
            _frameworkMessenger  = frameworkMessenger;
            _viewportManager     = viewportManager;
            _ndcQuadVertexBuffer = ndcQuadVertexBuffer;
            _gpuSurfaceManager   = gpuSurfaceManager;

            Initialise();
        }
예제 #3
0
        private Pipeline _pipeline; //rename internal version

        public DistortionRenderer(ISystemComponents systemComponents,
                                  IShaderLoader shaderLoader,
                                  IPipelineFactory pipelineFactory,
                                  IFullNdcSpaceQuadVertexBuffer ndcQuadVertexBuffer,
                                  IViewportManager viewportManager)
        {
            _systemComponents    = systemComponents;
            _shaderLoader        = shaderLoader;
            _pipelineFactory     = pipelineFactory;
            _ndcQuadVertexBuffer = ndcQuadVertexBuffer;
            _viewportManager     = viewportManager;

            Initialise();
        }
        public SinglePassGaussianBlurRenderer(ISystemComponents systemComponents,
                                              IShaderLoader shaderLoader,
                                              IPipelineFactory pipelineFactory,
                                              IFullNdcSpaceQuadVertexBuffer ndcQuadVertexBuffer,
                                              IGaussianBlurWeightsAndOffsetsCache gaussianWeightsAndOffsetsCache)
        {
            _systemComponents               = systemComponents;
            _shaderLoader                   = shaderLoader;
            _pipelineFactory                = pipelineFactory;
            _ndcQuadVertexBuffer            = ndcQuadVertexBuffer;
            _gaussianWeightsAndOffsetsCache = gaussianWeightsAndOffsetsCache;

            Initialise();
        }
예제 #5
0
        public GraphicsResourceReinitialiser(
            IGraphics graphics,
            ICameraManager cameraManager,
            IPipelineFactory pipelineFactory,
            IRenderStageManager renderStageManager,
            IViewportManager viewportManager,
            IFullNdcSpaceQuadVertexBuffer ndcSpaceQuadVertexBuffer,
            IBloomResultMixingRenderer bloomResultMixingRenderer,
            IBloomSamplingRenderer bloomSamplingRender,
            IBlurResultMixingRenderer blurResultMixingRenderer,
            IColourEffectsStageRenderer colourEffectStageRenderer,
            ICopyStageRenderer copyStageRenderer,
            IDistortionGraidentShiftRenderer distortionGradientShiftRenderer,
            IDistortionHeightRenderer distortionHeightRenderer,
            IDistortionRenderer distortionRenderer,
            IDownSamplingRenderer downSamplingRenderer,
            IDrawStageRenderer drawStageRenderer,
            IMeshRenderStageRenderer meshStageRenderer,
            IMixStageRenderer mixStageRenderer,
            ISinglePassGaussianBlurRenderer singlePassGaussianBlurRenderer,
            IStyleEffectsStageRenderer styleEffectStageRenderer,
            ISurfaceCopyStageRenderer surfaceCopyStageRenderer
            )
        {
            _graphics           = graphics;
            _cameraManager      = cameraManager;
            _pipelineFactory    = pipelineFactory;
            _renderStageManager = renderStageManager;
            _viewportManager    = viewportManager;

            _ndcSpaceQuadVertexBuffer = ndcSpaceQuadVertexBuffer;

            _bloomResultMixingRenderer       = bloomResultMixingRenderer;
            _bloomSamplingRender             = bloomSamplingRender;
            _blurResultMixingRenderer        = blurResultMixingRenderer;
            _colourEffectStageRenderer       = colourEffectStageRenderer;
            _copyStageRenderer               = copyStageRenderer;
            _distortionGradientShiftRenderer = distortionGradientShiftRenderer;
            _distortionHeightRenderer        = distortionHeightRenderer;
            _distortionRenderer              = distortionRenderer;
            _downSamplingRenderer            = downSamplingRenderer;
            _drawStageRenderer               = drawStageRenderer;
            _meshStageRenderer               = meshStageRenderer;
            _mixStageRenderer = mixStageRenderer;
            _singlePassGaussianBlurRenderer = singlePassGaussianBlurRenderer;
            _styleEffectStageRenderer       = styleEffectStageRenderer;
            _surfaceCopyStageRenderer       = surfaceCopyStageRenderer;
        }
예제 #6
0
        public ColourEffectsStageRenderer(IFrameworkMessenger frameworkMessenger,
                                          ISystemComponents systemComponents,
                                          IShaderLoader shaderLoader,
                                          IPipelineFactory pipelineFactory,
                                          IFullNdcSpaceQuadVertexBuffer ndcQuadVertexBuffer,
                                          IViewportManager viewportManager)
        {
            _frameworkMessenger  = frameworkMessenger;
            _systemComponents    = systemComponents;
            _shaderLoader        = shaderLoader;
            _pipelineFactory     = pipelineFactory;
            _ndcQuadVertexBuffer = ndcQuadVertexBuffer;
            _viewportManager     = viewportManager;

            Initialise();
        }
예제 #7
0
        public BloomSamplingRenderer(ISystemComponents systemComponents,
                                     IShaderLoader shaderLoader,
                                     IPipelineFactory pipelineFactory,
                                     IFullNdcSpaceQuadVertexBuffer ndcQuadVertexBuffer,
                                     IDownSamplerWeightsAndOffsets downSamplerWeightsAndOffsets)
        {
            _systemComponents    = systemComponents;
            _shaderLoader        = shaderLoader;
            _pipelineFactory     = pipelineFactory;
            _ndcQuadVertexBuffer = ndcQuadVertexBuffer;
            _downSamplerValues   = downSamplerWeightsAndOffsets;

            Initialise();

            _sampleType = null;
        }
예제 #8
0
        private Pipeline _pipeline; //rename internal version

        public DistortionGradientShiftRenderer(IFrameworkMessenger frameworkMessenger,
                                               ISystemComponents systemComponents,
                                               IShaderLoader shaderLoader,
                                               IPipelineFactory pipelineFactory,
                                               IGpuSurfaceManager surfaceManager,
                                               IFullNdcSpaceQuadVertexBuffer ndcQuadVertexBuffer)
        {
            _frameworkMessenger  = frameworkMessenger;
            _systemComponents    = systemComponents;
            _shaderLoader        = shaderLoader;
            _pipelineFactory     = pipelineFactory;
            _surfaceManager      = surfaceManager;
            _ndcQuadVertexBuffer = ndcQuadVertexBuffer;

            Initialise();
        }