示例#1
0
        public PostEffectLightBloom()
        {
            var g        = Engine.Graphics;
            var baseCode = SwigObject.GetLightBloomShader((swig.GraphicsDeviceType)g.GraphicsDeviceType);

            var codeX     = "#define BLUR_X 1\n" + baseCode;
            var codeX_Lum = "#define BLUR_X 1\n#define LUM 1\n" + baseCode;
            var codeY     = "#define BLUR_Y 1\n" + baseCode;
            var codeSum   = "#define SUM 1\n" + baseCode;

            var shaderX = g.CreateShader2D(codeX);

            material2dX = g.CreateMaterial2D(shaderX);

            var shaderX_Lum = g.CreateShader2D(codeX_Lum);

            material2dX_Lum = g.CreateMaterial2D(shaderX_Lum);

            var shaderY = g.CreateShader2D(codeY);

            material2dY = g.CreateMaterial2D(shaderY);

            var shaderSum = g.CreateShader2D(codeSum);

            materialSum = g.CreateMaterial2D(shaderSum);

            string downsampleCode   = SwigObject.GetDownsampleShader((swig.GraphicsDeviceType)g.GraphicsDeviceType);
            var    downsampleShader = g.CreateShader2D(downsampleCode);

            downsample = g.CreateMaterial2D(downsampleShader);
        }