コード例 #1
0
            protected override ITextureFilter CreateFilter(ITextureFilter sourceFilter)
            {
                // get MPDN to scale image to target size first
                sourceFilter += new Resizer {
                    ResizerOption = ResizerOption.TargetSize100Percent
                };

                // apply our blue tint
                var blueTint = CompileShader("BlueTintSm3.hlsl")
                               .Configure(linearSampling: false, arguments: new[] { 0.25f, 0.5f, 0.75f });

                return(sourceFilter.Apply(blueTint));
            }
コード例 #2
0
            protected override ITextureFilter CreateFilter(ITextureFilter sourceFilter)
            {
                // get MPDN to scale image to target size first
                sourceFilter += new Resizer {
                    ResizerOption = ResizerOption.TargetSize100Percent
                };

                // apply our blue tint
                var blueTint = new Shader(FromFile("BlueTintSm3.hlsl"))
                {
                    LinearSampling = false,
                    Arguments      = new[] { 0.25f, 0.5f, 0.75f }
                };

                return(sourceFilter.Apply(blueTint));
            }
コード例 #3
0
            protected override ITextureFilter CreateFilter(ITextureFilter input)
            {
                if (!Renderer.IsDx11Avail)
                {
                    return(new NullFilter()); // display blank screen on purpose
                }
                // get MPDN to scale image to target size first
                input += new Resizer {
                    ResizerOption = ResizerOption.TargetSize100Percent
                };

                // apply our blue tint
                var blueTint = new Shader11(FromFile("BlueTintSm5.hlsl", "ps_5_0"))
                {
                    LinearSampling = false,
                    Arguments      = new[] { 0.25f, 0.5f, 0.75f }
                };

                return(input.Apply(blueTint));
            }
コード例 #4
0
            protected override ITextureFilter CreateFilter(ITextureFilter sourceFilter)
            {
                if (!Renderer.IsDx11Avail || Renderer.RenderQuality.PerformanceMode())
                {
                    return(new NullFilter()); // display blank screen on purpose
                }
                // get MPDN to scale image to target size first
                sourceFilter += new Resizer {
                    ResizerOption = ResizerOption.TargetSize100Percent
                };

                // apply our blue tint
                var width    = sourceFilter.Size().Width;
                var height   = sourceFilter.Size().Height;
                var blueTint =
                    new ComputeShader(FromFile("BlueTintDirectCompute.hlsl", "cs_5_0"))
                {
                    ThreadGroupX = width / 32 + 1,
                    ThreadGroupY = height / 32 + 1,
                    Arguments    = new[] { 0.25f, 0.5f, 0.75f }
                };

                return(sourceFilter.Apply(blueTint));
            }