Ejemplo n.º 1
0
            public void Generate(ShaderMixinSourceTree mixin, ShaderMixinContext context)
            {
                #line 129
                context.CloneProperties();

                #line 129
                mixin.Mixin.CloneFrom(mixin.Parent.Mixin);

                #line 130
                context.Mixin(mixin, "DeferredShadowLightingShader");

                #line 132
                if (context.GetParam(ShadowMapParameters.FilterType) == ShadowMapFilterType.Nearest)

                {
                        #line 133
                    var __subMixin = new ShaderMixinSourceTree()
                    {
                        Parent = mixin
                    };

                        #line 133
                    context.Mixin(__subMixin, "NearestFilterGroup");
                    mixin.Mixin.AddCompositionToArray("shadows", __subMixin.Mixin);
                }

                #line 134
                else
#line 134
                if (context.GetParam(ShadowMapParameters.FilterType) == ShadowMapFilterType.PercentageCloserFiltering)

                {
                        #line 135
                    var __subMixin = new ShaderMixinSourceTree()
                    {
                        Parent = mixin
                    };

                        #line 135
                    context.Mixin(__subMixin, "PcfGroup");
                    mixin.Mixin.AddCompositionToArray("shadows", __subMixin.Mixin);
                }

                #line 136
                else
#line 136
                if (context.GetParam(ShadowMapParameters.FilterType) == ShadowMapFilterType.Variance)

                {
                        #line 137
                    var __subMixin = new ShaderMixinSourceTree()
                    {
                        Parent = mixin
                    };

                        #line 137
                    context.Mixin(__subMixin, "VsmGroup");
                    mixin.Mixin.AddCompositionToArray("shadows", __subMixin.Mixin);
                }
            }
Ejemplo n.º 2
0
            public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
            {
                context.Mixin(mixin, "A");

                {
                    var __mixinToCompose__ = "ABCSubEffect";
                    var __subMixin         = new ShaderMixinSource();
                    context.PushComposition(mixin, "SubCompute1", __subMixin);
                    context.Mixin(__subMixin, __mixinToCompose__);
                    context.PopComposition();
                }

                {
                    var __mixinToCompose__ = "ABCSubEffect";
                    var __subMixin         = new ShaderMixinSource();
                    context.PushComposition(mixin, "SubCompute2", __subMixin);
                    context.Mixin(__subMixin, __mixinToCompose__);
                    context.PopComposition();
                }

                {
                    var __mixinToCompose__ = "ABCSubEffect";
                    var __subMixin         = new ShaderMixinSource();
                    context.PushCompositionArray(mixin, "SubComputes", __subMixin);
                    context.Mixin(__subMixin, __mixinToCompose__);
                    context.PopComposition();
                }
            }
Ejemplo n.º 3
0
            public void Generate(ShaderMixinSourceTree mixin, ShaderMixinContext context)
            {
                #line 99
                if (context.GetParam(ShadowMapParameters.LightType) == LightType.Directional)

                    #line 100
                {
                    context.Mixin(mixin, "DeferredLightingDirectShadowGroup");
                }

                #line 101
                else
#line 101
                if (context.GetParam(ShadowMapParameters.LightType) == LightType.Spot)

                    #line 102
                {
                    context.Mixin(mixin, "DeferredLightingSpotShadowGroup");
                }

                #line 104
                else

                    #line 104
                {
                    context.Mixin(mixin, "DeferredLightingDirectShadowGroup");
                }
            }
            public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
            {
                var directLightGroups = context.GetParam(LightingKeys.DirectLightGroups);
                if (directLightGroups != null)
                {
                    foreach(var directLightGroup in directLightGroups)

                    {

                        {
                            var __mixinToCompose__ = (directLightGroup);
                            var __subMixin = new ShaderMixinSource();
                            context.PushCompositionArray(mixin, "directLightGroups", __subMixin);
                            context.Mixin(__subMixin, __mixinToCompose__);
                            context.PopComposition();
                        }
                    }
                }
                var environmentLights = context.GetParam(LightingKeys.EnvironmentLights);
                if (environmentLights != null)
                {
                    foreach(var environmentLight in environmentLights)

                    {

                        {
                            var __mixinToCompose__ = (environmentLight);
                            var __subMixin = new ShaderMixinSource();
                            context.PushCompositionArray(mixin, "environmentLights", __subMixin);
                            context.Mixin(__subMixin, __mixinToCompose__);
                            context.PopComposition();
                        }
                    }
                }
            }
            public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
            {
                context.Mixin(mixin, "ParticleBaseEffect");
                context.Mixin(mixin, "ParticleCustomShader");
                if (context.GetParam(ParticleCustomShaderKeys.BaseColor) != null)
                {

                    {
                        var __mixinToCompose__ = context.GetParam(ParticleCustomShaderKeys.BaseColor);
                        var __subMixin = new ShaderMixinSource();
                        context.PushComposition(mixin, "baseColor", __subMixin);
                        context.Mixin(__subMixin, __mixinToCompose__);
                        context.PopComposition();
                    }
                }
                if (context.GetParam(ParticleCustomShaderKeys.BaseIntensity) != null)
                {

                    {
                        var __mixinToCompose__ = context.GetParam(ParticleCustomShaderKeys.BaseIntensity);
                        var __subMixin = new ShaderMixinSource();
                        context.PushComposition(mixin, "baseIntensity", __subMixin);
                        context.Mixin(__subMixin, __mixinToCompose__);
                        context.PopComposition();
                    }
                }
            }
 public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
 {
     context.Mixin(mixin, "A");
     context.Mixin(mixin, "B");
     context.Mixin(mixin, "C");
     context.Mixin(mixin, "ChildMixin");
 }
Ejemplo n.º 7
0
 public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
 {
     if (context.GetParam(SceneEditorParameters.IsEffectError))
     {
         context.Mixin(mixin, "ShaderBase");
         context.Mixin(mixin, "ShadingBase");
         context.Mixin(mixin, "TransformationBase");
         context.Mixin(mixin, "TransformationWAndVP");
         context.Mixin(mixin, "CompilationErrorShader");
         context.Discard();
         ;
     }
     context.Mixin(mixin, "StrideForwardShadingEffect");
     if (context.ChildEffectName == "Picking")
     {
         context.Mixin(mixin, "Picking");
         return;
     }
     if (context.ChildEffectName == "Wireframe")
     {
         context.Mixin(mixin, "Wireframe");
         return;
     }
     if (context.ChildEffectName == "Highlight")
     {
         context.Mixin(mixin, "Highlight");
         return;
     }
     if (context.GetParam(SceneEditorParameters.IsEffectCompiling))
     {
         context.Mixin(mixin, "EffectCompiling");
     }
 }
Ejemplo n.º 8
0
            public void Generate(ShaderMixinSourceTree mixin, ShaderMixinContext context)
            {
                context.Mixin(mixin, "A");

                {
                    var __subMixin = new ShaderMixinSourceTree()
                    {
                        Parent = mixin
                    };
                    context.PushComposition(mixin, "SubCompute1", __subMixin);
                    context.Mixin(__subMixin, "ABCSubEffect");
                    context.PopComposition();
                }

                {
                    var __subMixin = new ShaderMixinSourceTree()
                    {
                        Parent = mixin
                    };
                    context.PushComposition(mixin, "SubCompute2", __subMixin);
                    context.Mixin(__subMixin, "ABCSubEffect");
                    context.PopComposition();
                }

                {
                    var __subMixin = new ShaderMixinSourceTree()
                    {
                        Parent = mixin
                    };
                    context.PushCompositionArray(mixin, "SubComputes", __subMixin);
                    context.Mixin(__subMixin, "ABCSubEffect");
                    context.PopComposition();
                }
            }
Ejemplo n.º 9
0
            public void Generate(ShaderMixinSourceTree mixin, ShaderMixinContext context)
            {
                {
                    #line 43
                    var __subMixin = new ShaderMixinSourceTree()
                    {
                        Name = "ParadoxGBufferShaderPass", Parent = mixin
                    };
                    mixin.Children.Add(__subMixin);

                    #line 43
                    context.BeginChild(__subMixin);

                    #line 43
                    context.Mixin(__subMixin, "ParadoxGBufferShaderPass");

                    #line 43
                    context.EndChild();
                }

                #line 47
                context.RemoveMixin(mixin, "NormalVSStream");

                #line 48
                context.RemoveMixin(mixin, "SpecularPowerMap");

                #line 49
                context.RemoveMixin(mixin, "SpecularPowerPerMesh");

                #line 52
                context.Mixin(mixin, "NormalVSGBuffer");

                #line 54
                context.Mixin(mixin, "SpecularPowerGBuffer");
            }
Ejemplo n.º 10
0
 public void Generate(ShaderMixinSourceTree mixin, ShaderMixinContext context)
 {
     mixin.Mixin.AddMacro("LIGHTING_MAX_LIGHT_COUNT", context.GetParam(ShadowMapParameters.ShadowMapCount));
     context.Mixin(mixin, "ParadoxLightingTypeShader");
     context.Mixin(mixin, "ShadingPerPixelShadow");
     context.Mixin(mixin, "SpotShading");
     context.Mixin(mixin, "ShadingEyeNormalVS");
     context.Mixin(mixin, "ForwardShadowMapBase");
     context.Mixin(mixin, "ShadowMapCascadeBase");
     mixin.Mixin.AddMacro("SHADOWMAP_COUNT", context.GetParam(ShadowMapParameters.ShadowMapCount));
     mixin.Mixin.AddMacro("SHADOWMAP_CASCADE_COUNT", context.GetParam(ShadowMapParameters.ShadowMapCascadeCount));
     mixin.Mixin.AddMacro("SHADOWMAP_TOTAL_COUNT", context.GetParam(ShadowMapParameters.ShadowMapCount) * context.GetParam(ShadowMapParameters.ShadowMapCascadeCount));
     if (context.GetParam(ShadowMapParameters.FilterType) == ShadowMapFilterType.Nearest)
     {
         context.Mixin(mixin, "ShadowMapFilterDefault");
     }
     else if (context.GetParam(ShadowMapParameters.FilterType) == ShadowMapFilterType.PercentageCloserFiltering)
     {
         context.Mixin(mixin, "ShadowMapFilterPcf");
     }
     else if (context.GetParam(ShadowMapParameters.FilterType) == ShadowMapFilterType.Variance)
     {
         context.Mixin(mixin, "ShadowMapFilterVsm");
     }
 }
Ejemplo n.º 11
0
            public void Generate(ShaderMixinSourceTree mixin, ShaderMixinContext context)
            {
                context.Mixin(mixin, "ParadoxBaseShader");
                context.Mixin(mixin, "ParadoxSkinning");
                context.Mixin(mixin, "ParadoxShadowCast");
                context.Mixin(mixin, "ParadoxDiffuseForward");
                context.Mixin(mixin, "ParadoxSpecularForward");
                if (context.GetParam(MaterialParameters.AmbientMap) != null)
                {
                    context.Mixin(mixin, "AmbientMapShading");

                    {
                        var __subMixin = new ShaderMixinSourceTree()
                        {
                            Parent = mixin
                        };
                        context.PushComposition(mixin, "AmbientMap", __subMixin);
                        context.Mixin(__subMixin, context.GetParam(MaterialParameters.AmbientMap));
                        context.PopComposition();
                    }
                }
                if (context.GetParam(MaterialParameters.UseTransparentMask))
                {
                    context.Mixin(mixin, "TransparentShading");
                    context.Mixin(mixin, "DiscardTransparentThreshold", context.GetParam(MaterialParameters.AlphaDiscardThreshold));
                }
                else if (context.GetParam(MaterialParameters.UseTransparent))
                {
                    context.Mixin(mixin, "TransparentShading");
                    context.Mixin(mixin, "DiscardTransparent");
                }
            }
            public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
            {
                context.Mixin(mixin, "A");
                context.Mixin(mixin, "B");
                if (context.GetParam(TestParameters.param1))
                {
                    context.Mixin(mixin, "C");
                    mixin.AddMacro("param2", context.GetParam(TestParameters.param2));

                    {
                        var __mixinToCompose__ = "X";
                        var __subMixin         = new ShaderMixinSource();
                        context.PushComposition(mixin, "x", __subMixin);
                        context.Mixin(__subMixin, __mixinToCompose__);
                        context.PopComposition();
                    }
                }
                else
                {
                    context.Mixin(mixin, "D");
                    mixin.AddMacro("Test", context.GetParam(TestParameters.param3));

                    {
                        var __mixinToCompose__ = "Y";
                        var __subMixin         = new ShaderMixinSource();
                        context.PushComposition(mixin, "y", __subMixin);
                        context.Mixin(__subMixin, __mixinToCompose__);
                        context.PopComposition();
                    }
                }
            }
Ejemplo n.º 13
0
            public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
            {
                context.Mixin(mixin, "LightSkyboxShader");
                if (context.GetParam(LightSkyboxShaderKeys.LightDiffuseColor) != null)
                {

                    {
                        var __mixinToCompose__ = context.GetParam(LightSkyboxShaderKeys.LightDiffuseColor);
                        var __subMixin = new ShaderMixinSource();
                        context.PushComposition(mixin, "lightDiffuseColor", __subMixin);
                        context.Mixin(__subMixin, __mixinToCompose__);
                        context.PopComposition();
                    }
                }
                if (context.GetParam(LightSkyboxShaderKeys.LightSpecularColor) != null)
                {

                    {
                        var __mixinToCompose__ = context.GetParam(LightSkyboxShaderKeys.LightSpecularColor);
                        var __subMixin = new ShaderMixinSource();
                        context.PushComposition(mixin, "lightSpecularColor", __subMixin);
                        context.Mixin(__subMixin, __mixinToCompose__);
                        context.PopComposition();
                    }
                }
            }
Ejemplo n.º 14
0
            public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
            {
                context.Mixin(mixin, "BufferToTexture");
                if (context.GetParam(BufferToTextureKeys.Modifiers) != null)
                {
                    foreach (var attr in context.GetParam(BufferToTextureKeys.Modifiers))
                    {
                        {
                            var __mixinToCompose__ = (attr);
                            var __subMixin         = new ShaderMixinSource();
                            context.PushCompositionArray(mixin, "Modifiers", __subMixin);
                            context.Mixin(__subMixin, __mixinToCompose__);
                            context.PopComposition();
                        }
                    }
                }
                if (context.GetParam(BufferToTextureKeys.AttributesIndirect) != null)
                {
                    foreach (var attr in context.GetParam(BufferToTextureKeys.AttributesIndirect))

                    {
                        {
                            var __mixinToCompose__ = (attr);
                            var __subMixin         = new ShaderMixinSource();
                            context.PushCompositionArray(mixin, "AttributesIndirect", __subMixin);
                            context.Mixin(__subMixin, __mixinToCompose__);
                            context.PopComposition();
                        }
                    }
                }
            }
Ejemplo n.º 15
0
            public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
            {
                context.Mixin(mixin, "A");

                {
                    var __mixinToCompose__ = "ABCSubEffect";
                    var __subMixin = new ShaderMixinSource();
                    context.PushComposition(mixin, "SubCompute1", __subMixin);
                    context.Mixin(__subMixin, __mixinToCompose__);
                    context.PopComposition();
                }

                {
                    var __mixinToCompose__ = "ABCSubEffect";
                    var __subMixin = new ShaderMixinSource();
                    context.PushComposition(mixin, "SubCompute2", __subMixin);
                    context.Mixin(__subMixin, __mixinToCompose__);
                    context.PopComposition();
                }

                {
                    var __mixinToCompose__ = "ABCSubEffect";
                    var __subMixin = new ShaderMixinSource();
                    context.PushCompositionArray(mixin, "SubComputes", __subMixin);
                    context.Mixin(__subMixin, __mixinToCompose__);
                    context.PopComposition();
                }
            }
Ejemplo n.º 16
0
 public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
 {
     context.Mixin(mixin, "A");
     context.Mixin(mixin, "B");
     context.Mixin(mixin, "C");
     context.Mixin(mixin, "ChildMixin");
 }
            public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
            {
                context.Mixin(mixin, "A");
                context.Mixin(mixin, "B");
                if (context.GetParam(TestParameters.param1))
                {
                    context.Mixin(mixin, "C");
                    mixin.AddMacro("param2", context.GetParam(TestParameters.param2));

                    {
                        var __mixinToCompose__ = "X";
                        var __subMixin = new ShaderMixinSource();
                        context.PushComposition(mixin, "x", __subMixin);
                        context.Mixin(__subMixin, __mixinToCompose__);
                        context.PopComposition();
                    }
                }
                else
                {
                    context.Mixin(mixin, "D");
                    mixin.AddMacro("Test", context.GetParam(TestParameters.param3));

                    {
                        var __mixinToCompose__ = "Y";
                        var __subMixin = new ShaderMixinSource();
                        context.PushComposition(mixin, "y", __subMixin);
                        context.Mixin(__subMixin, __mixinToCompose__);
                        context.PopComposition();
                    }
                }
            }
            public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
            {
                context.Mixin(mixin, "A");
                context.Mixin(mixin, "B");
                context.Mixin(mixin, "C");
                int x = 1;
                foreach(var ____1 in context.GetParam(TestParameters.subParameters))

                {
                    context.PushParameters(____1);
                    if (context.GetParam(SubParameters.param1))
                    {
                        context.Mixin(mixin, "C" + x);
                    }
                    x++;
                    context.PopParameters();
                }

                {
                    context.PushParameters(context.GetParam(TestParameters.subParam1));
                    if (context.GetParam(SubParameters.param2) == 1)
                    {
                        context.Mixin(mixin, "D");
                    }
                    context.PopParameters();
                }
            }
 public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
 {
     context.Mixin(mixin, "VoxelVisualizationViewShader");
     if (context.GetParam(VoxelVisualizationViewShaderKeys.marcher) != null)
     {
         {
             var __mixinToCompose__ = context.GetParam(VoxelVisualizationViewShaderKeys.marcher);
             var __subMixin         = new ShaderMixinSource();
             context.PushComposition(mixin, "marcher", __subMixin);
             context.Mixin(__subMixin, __mixinToCompose__);
             context.PopComposition();
         }
     }
     if (context.GetParam(Voxels.MarchAttributesKeys.AttributeSamplers) != null)
     {
         foreach (var attr in context.GetParam(Voxels.MarchAttributesKeys.AttributeSamplers))
         {
             {
                 var __mixinToCompose__ = (attr);
                 var __subMixin         = new ShaderMixinSource();
                 context.PushCompositionArray(mixin, "AttributeSamplers", __subMixin);
                 context.Mixin(__subMixin, __mixinToCompose__);
                 context.PopComposition();
             }
         }
     }
 }
Ejemplo n.º 20
0
            public void Generate(ShaderMixinSourceTree mixin, ShaderMixinContext context)
            {
                context.Mixin(mixin, "ShaderBase");
                context.Mixin(mixin, "TransformationWAndVP");
                context.Mixin(mixin, "AlbedoFlatShading");
                if (context.GetParam(MaterialParameters.AlbedoDiffuse) != null)

                {
                    var __subMixin = new ShaderMixinSourceTree()
                    {
                        Parent = mixin
                    };
                    context.PushComposition(mixin, "albedoDiffuse", __subMixin);
                    context.Mixin(__subMixin, context.GetParam(MaterialParameters.AlbedoDiffuse));
                    context.PopComposition();
                }
                else

                {
                    var __subMixin = new ShaderMixinSourceTree()
                    {
                        Parent = mixin
                    };
                    context.PushComposition(mixin, "albedoDiffuse", __subMixin);
                    context.Mixin(__subMixin, "ComputeColorTextureCubeReflect", TexturingKeys.TextureCube0);
                    context.PopComposition();
                }
            }
Ejemplo n.º 21
0
            public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
            {
                context.Mixin(mixin, "BufferToTextureColumns");
                if (context.GetParam(BufferToTextureKeys.AttributesIndirect) != null)
                {
                    foreach (var attr in context.GetParam(BufferToTextureKeys.AttributesIndirect))

                    {
                        {
                            var __mixinToCompose__ = (attr);
                            var __subMixin         = new ShaderMixinSource();
                            context.PushCompositionArray(mixin, "AttributesIndirect", __subMixin);
                            context.Mixin(__subMixin, __mixinToCompose__);
                            context.PopComposition();
                        }
                    }
                }
                if (context.GetParam(BufferToTextureKeys.AttributesTemp) != null)
                {
                    foreach (var attr in context.GetParam(BufferToTextureKeys.AttributesTemp))

                    {
                        {
                            var __mixinToCompose__ = (attr);
                            var __subMixin         = new ShaderMixinSource();
                            context.PushCompositionArray(mixin, "AttributesTemp", __subMixin);
                            context.Mixin(__subMixin, __mixinToCompose__);
                            context.PopComposition();
                        }
                    }
                }
                mixin.AddMacro("IndirectReadAndStoreMacro", context.GetParam(BufferToTextureKeys.IndirectReadAndStoreMacro));
                mixin.AddMacro("IndirectStoreMacro", context.GetParam(BufferToTextureKeys.IndirectStoreMacro));
            }
Ejemplo n.º 22
0
            public void Generate(ShaderMixinSourceTree mixin, ShaderMixinContext context)
            {
                #line 14
                context.Mixin(mixin, "A");

                #line 15
                context.Mixin(mixin, "B");

                #line 16
                context.Mixin(mixin, "C");

                {
                    #line 18
                    var __subMixin = new ShaderMixinSourceTree()
                    {
                        Name = "Test", Parent = mixin
                    };
                    mixin.Children.Add(__subMixin);

                    #line 18
                    context.BeginChild(__subMixin);

                    #line 18
                    context.Mixin(__subMixin, "ChildClone");

                    #line 18
                    context.EndChild();
                }
            }
Ejemplo n.º 23
0
            public void Generate(ShaderMixinSourceTree mixin, ShaderMixinContext context)
            {
                #line 26
                context.Mixin(mixin, "ShaderBase");

                #line 27
                context.Mixin(mixin, "TransformationWAndVP");

                #line 29
                mixin.Mixin.AddMacro("MAX_VERTEX_COUNT", 9);

                #line 30
                context.Mixin(mixin, "CameraCube");

                #line 32
                context.Mixin(mixin, "AlbedoFlatShading");

                #line 34
                if (context.GetParam(MaterialParameters.AlbedoDiffuse) != null)

                {
                        #line 35
                    var __subMixin = new ShaderMixinSourceTree()
                    {
                        Parent = mixin
                    };

                        #line 35
                    context.Mixin(__subMixin, context.GetParam(MaterialParameters.AlbedoDiffuse));
                    mixin.Mixin.AddComposition("albedoDiffuse", __subMixin.Mixin);
                }
            }
Ejemplo n.º 24
0
            public void Generate(ShaderMixinSourceTree mixin, ShaderMixinContext context)
            {
                context.Mixin(mixin, "ShaderBase");
                context.Mixin(mixin, "TransformationWVP");
                context.Mixin(mixin, "BRDFDiffuseBase");
                context.Mixin(mixin, "BRDFSpecularBase");
                context.Mixin(mixin, "AlbedoFlatShading");
                context.Mixin(mixin, "TransparentShading");
                if (context.GetParam(MaterialParameters.AlbedoDiffuse) != null)

                {
                    var __subMixin = new ShaderMixinSourceTree()
                    {
                        Parent = mixin
                    };
                    context.PushComposition(mixin, "albedoDiffuse", __subMixin);
                    context.Mixin(__subMixin, context.GetParam(MaterialParameters.AlbedoDiffuse));
                    context.PopComposition();
                }
                if (context.GetParam(MaterialParameters.AlbedoSpecular) != null)

                {
                    var __subMixin = new ShaderMixinSourceTree()
                    {
                        Parent = mixin
                    };
                    context.PushComposition(mixin, "albedoSpecular", __subMixin);
                    context.Mixin(__subMixin, context.GetParam(MaterialParameters.AlbedoSpecular));
                    context.PopComposition();
                }
            }
Ejemplo n.º 25
0
            public void Generate(ShaderMixinSourceTree mixin, ShaderMixinContext context)
            {
                context.Mixin(mixin, "BRDFDiffuseBase");
                context.Mixin(mixin, "BRDFSpecularBase");
                if (context.GetParam(MaterialParameters.AlbedoSpecular) != null)
                {
                    context.Mixin(mixin, "AlbedoSpecularBase");

                    {
                        var __subMixin = new ShaderMixinSourceTree()
                        {
                            Parent = mixin
                        };
                        context.PushComposition(mixin, "albedoSpecular", __subMixin);
                        context.Mixin(__subMixin, context.GetParam(MaterialParameters.AlbedoSpecular));
                        context.PopComposition();
                    }

                    {
                        var __subMixin = new ShaderMixinSourceTree()
                        {
                            Parent = mixin
                        };
                        context.PushComposition(mixin, "SpecularLighting", __subMixin);
                        context.Mixin(__subMixin, "ParadoxSpecularLighting");
                        context.PopComposition();
                    }
                }
            }
Ejemplo n.º 26
0
            public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
            {
                ShaderSourceCollection directLightGroups = context.GetParam(LightingKeys.DirectLightGroups);

                if (directLightGroups != null)
                {
                    foreach (ShaderSource directLightGroup in directLightGroups)

                    {
                        {
                            var __mixinToCompose__ = (directLightGroup);
                            var __subMixin         = new ShaderMixinSource();
                            context.PushCompositionArray(mixin, "directLightGroups", __subMixin);
                            context.Mixin(__subMixin, __mixinToCompose__);
                            context.PopComposition();
                        }
                    }
                }
                ShaderSourceCollection environmentLights = context.GetParam(LightingKeys.EnvironmentLights);

                if (environmentLights != null)
                {
                    foreach (ShaderSource environmentLight in environmentLights)

                    {
                        {
                            var __mixinToCompose__ = (environmentLight);
                            var __subMixin         = new ShaderMixinSource();
                            context.PushCompositionArray(mixin, "environmentLights", __subMixin);
                            context.Mixin(__subMixin, __mixinToCompose__);
                            context.PopComposition();
                        }
                    }
                }
            }
Ejemplo n.º 27
0
 public void Generate(ShaderMixinSourceTree mixin, ShaderMixinContext context)
 {
     mixin.Mixin.AddMacro("LIGHTING_MAX_LIGHT_COUNT", context.GetParam(LightingKeys.MaxDirectionalLights));
     context.Mixin(mixin, "ParadoxLightingTypeShader");
     context.Mixin(mixin, "DirectionalShading");
     context.Mixin(mixin, "ShadingEyeNormalVS");
 }
Ejemplo n.º 28
0
            public void Generate(ShaderMixinSourceTree mixin, ShaderMixinContext context)
            {
                context.Mixin(mixin, "ShaderBase");
                context.Mixin(mixin, "ShadingBase");
                context.Mixin(mixin, "TransformationWAndVP");
                context.Mixin(mixin, "PositionVSStream");
                if (context.GetParam(MaterialParameters.NormalMap) != null)
                {
                    context.Mixin(mixin, "NormalMapTexture");

                    {
                        var __subMixin = new ShaderMixinSourceTree()
                        {
                            Parent = mixin
                        };
                        context.PushComposition(mixin, "normalMap", __subMixin);
                        context.Mixin(__subMixin, context.GetParam(MaterialParameters.NormalMap));
                        context.PopComposition();
                    }
                }
                else
                {
                    context.Mixin(mixin, "NormalVSStream");
                }
            }
Ejemplo n.º 29
0
            public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
            {
                context.Mixin(mixin, "A");
                context.Mixin(mixin, "B");
                context.Mixin(mixin, "C");
                int x = 1;

                foreach (var ____1 in context.GetParam(TestParameters.subParameters))

                {
                    context.PushParameters(____1);
                    if (context.GetParam(SubParameters.param1))
                    {
                        context.Mixin(mixin, "C" + x);
                    }
                    x++;
                    context.PopParameters();
                }

                {
                    context.PushParameters(context.GetParam(TestParameters.subParam1));
                    if (context.GetParam(SubParameters.param2) == 1)
                    {
                        context.Mixin(mixin, "D");
                    }
                    context.PopParameters();
                }
            }
Ejemplo n.º 30
0
 public void Generate(ShaderMixinSourceTree mixin, ShaderMixinContext context)
 {
     if (context.GetParam(MaterialParameters.HasSkinningPosition))
     {
         if (context.GetParam(MaterialParameters.SkinningBones) > context.GetParam(MaterialParameters.SkinningMaxBones))
         {
             context.SetParam(MaterialParameters.SkinningMaxBones, context.GetParam(MaterialParameters.SkinningBones));
         }
         mixin.Mixin.AddMacro("SkinningMaxBones", context.GetParam(MaterialParameters.SkinningMaxBones));
         context.Mixin(mixin, "TransformationSkinning");
         if (context.GetParam(MaterialParameters.HasSkinningNormal))
         {
             if (context.GetParam(MaterialParameters.NormalMap) != null)
             {
                 context.Mixin(mixin, "TangentToViewSkinning");
             }
             else
             {
                 context.Mixin(mixin, "NormalVSSkinning");
             }
             context.Mixin(mixin, "NormalSkinning");
         }
         if (context.GetParam(MaterialParameters.HasSkinningTangent))
         {
             context.Mixin(mixin, "TangentSkinning");
         }
     }
 }
Ejemplo n.º 31
0
            public void Generate(ShaderMixinSourceTree mixin, ShaderMixinContext context)
            {
                if (context.GetParam(TestParameters.UseComputeColor2))
                {
                    context.Mixin(mixin, "ComputeColor2");
                }
                else if (context.GetParam(TestParameters.UseComputeColorRedirect))
                {
                    context.Mixin(mixin, "ComputeColorRedirect");

                    {
                        var __subMixin = new ShaderMixinSourceTree()
                        {
                            Parent = mixin
                        };
                        context.PushComposition(mixin, "ColorRedirect", __subMixin);
                        context.Mixin(__subMixin, "ComputeColor2");
                        context.PopComposition();
                    }
                }
                else
                {
                    context.Mixin(mixin, "ComputeColor");
                }
            }
Ejemplo n.º 32
0
 public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
 {
     context.Mixin(mixin, "ParticleBaseEffect");
     context.Mixin(mixin, "ParticleCustomShader");
     if (context.GetParam(ParticleCustomShaderKeys.BaseColor) != null)
     {
         {
             var __mixinToCompose__ = context.GetParam(ParticleCustomShaderKeys.BaseColor);
             var __subMixin         = new ShaderMixinSource();
             context.PushComposition(mixin, "baseColor", __subMixin);
             context.Mixin(__subMixin, __mixinToCompose__);
             context.PopComposition();
         }
     }
     if (context.GetParam(ParticleCustomShaderKeys.BaseIntensity) != null)
     {
         {
             var __mixinToCompose__ = context.GetParam(ParticleCustomShaderKeys.BaseIntensity);
             var __subMixin         = new ShaderMixinSource();
             context.PushComposition(mixin, "baseIntensity", __subMixin);
             context.Mixin(__subMixin, __mixinToCompose__);
             context.PopComposition();
         }
     }
 }
Ejemplo n.º 33
0
            public void Generate(ShaderMixinSourceTree mixin, ShaderMixinContext context)
            {
                #line 13
                context.Mixin(mixin, "ShaderBase");

                #line 14
                context.Mixin(mixin, "TransformationWAndVP");

                #line 15
                context.Mixin(mixin, "PositionVSStream");

                #line 16
                context.Mixin(mixin, "NormalVSStream");

                #line 18
                mixin.Mixin.AddMacro("RENDER_TARGET_COUNT", 3);

                #line 19
                context.Mixin(mixin, "ShadingBase");

                #line 20
                if (context.GetParam(MaterialParameters.AlbedoDiffuse) != null)

                {
                        #line 21
                    var __subMixin = new ShaderMixinSourceTree()
                    {
                        Parent = mixin
                    };

                        #line 21
                    context.Mixin(__subMixin, context.GetParam(MaterialParameters.AlbedoDiffuse));
                    mixin.Mixin.AddComposition("ShadingColor0", __subMixin.Mixin);
                }

                {
                    #line 22
                    var __subMixin = new ShaderMixinSourceTree()
                    {
                        Parent = mixin
                    };

                    #line 22
                    context.Mixin(__subMixin, "LinearDepth");
                    mixin.Mixin.AddComposition("ShadingColor1", __subMixin.Mixin);
                }

                {
                    #line 23
                    var __subMixin = new ShaderMixinSourceTree()
                    {
                        Parent = mixin
                    };

                    #line 23
                    context.Mixin(__subMixin, "NormalColor");
                    mixin.Mixin.AddComposition("ShadingColor2", __subMixin.Mixin);
                }
            }
Ejemplo n.º 34
0
 public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
 {
     context.Mixin(mixin, "StrideForwardShadingEffect");
     if (context.GetParam(AtmosphereForwardShadingEffectParameters.RenderAerialPerspective))
     {
         context.Mixin(mixin, "AtmosphereForwardRender");
     }
 }
Ejemplo n.º 35
0
 public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
 {
     if (context.GetParam(PreviewTextureParameters.Is3D))
     {
         context.Mixin(mixin, "Sprite3DBase");
     }
     context.Mixin(mixin, "SpriteBatch");
 }
 public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
 {
     context.SetParam(TestParameters.TestCount, 1);
     if (context.GetParam(TestParameters.TestCount) == 1)
     {
         context.Mixin(mixin, "C1");
     }
 }
Ejemplo n.º 37
0
 public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
 {
     mixin.AddMacro("ThreadNumberX", context.GetParam(ComputeEffectShaderKeys.ThreadNumbers).X);
     mixin.AddMacro("ThreadNumberY", context.GetParam(ComputeEffectShaderKeys.ThreadNumbers).Y);
     mixin.AddMacro("ThreadNumberZ", context.GetParam(ComputeEffectShaderKeys.ThreadNumbers).Z);
     context.Mixin(mixin, "ComputeShaderBase");
     context.Mixin(mixin, context.GetParam(ComputeEffectShaderKeys.ComputeShaderName));
 }
Ejemplo n.º 38
0
 public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
 {
     mixin.AddMacro("ThreadNumberX", context.GetParam(ComputeEffectShaderKeys.ThreadNumbers).X);
     mixin.AddMacro("ThreadNumberY", context.GetParam(ComputeEffectShaderKeys.ThreadNumbers).Y);
     mixin.AddMacro("ThreadNumberZ", context.GetParam(ComputeEffectShaderKeys.ThreadNumbers).Z);
     context.Mixin(mixin, "ComputeShaderBase");
     context.Mixin(mixin, context.GetParam(ComputeEffectShaderKeys.ComputeShaderName));
 }
Ejemplo n.º 39
0
 public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
 {
     context.Mixin(mixin, "CustomShader");
     if (context.ChildEffectName == "CustomSubEffect")
     {
         context.Mixin(mixin, "CustomSubEffect");
         return;
     }
 }
 public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
 {
     context.Mixin(mixin, "ParadoxForwardShadingEffect");
     if (context.GetParam(GameParameters.EnableOnflyTextureUVChange))
         context.Mixin(mixin, "TransformationTextureUV");
     if (context.GetParam(GameParameters.EnableBend))
         context.Mixin(mixin, "TransformationBendWorld");
     if (context.GetParam(GameParameters.EnableFog))
         context.Mixin(mixin, "FogEffect");
 }
 public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
 {
     if (context.GetParam(ColorTransformKeys.Enabled))
     {
         context.Mixin(mixin, context.GetParam(ColorTransformKeys.Shader), context.GetParam(ColorTransformKeys.GenericArguments));
     }
     else
     {
         context.Mixin(mixin, "ColorTransformShader");
     }
 }
Ejemplo n.º 42
0
 public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
 {
     if (context.GetParam(CustomShaderKeys.SwitchEffectLevel) < 10)
     {
         context.Mixin(mixin, "CustomShader");
     }
     else
     {
         context.Mixin(mixin, "CustomShader2");
     }
 }
Ejemplo n.º 43
0
 public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
 {
     context.Mixin(mixin, "A");
     context.Mixin(mixin, "B");
     context.Mixin(mixin, "C");
     if (context.ChildEffectName == "Test")
     {
         context.Mixin(mixin, "ChildClone");
         return;
     }
 }
Ejemplo n.º 44
0
            public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
            {
                context.Mixin(mixin, "ToneMapShader");

                {
                    var __subMixin = new ShaderMixinSource() { Parent = mixin };
                    context.PushComposition(mixin, "ToneMapOperator", __subMixin);
                    context.Mixin(__subMixin, context.GetParam(ColorTransformKeys.Shader));
                    context.PopComposition();
                }
            }
Ejemplo n.º 45
0
            public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
            {
                context.Mixin(mixin, "ToneMapShader", context.GetParam(ToneMapKeys.AutoKey), context.GetParam(ToneMapKeys.AutoExposure));

                {
                    var __mixinToCompose__ = context.GetParam(ColorTransformKeys.Shader);
                    var __subMixin = new ShaderMixinSource();
                    context.PushComposition(mixin, "ToneMapOperator", __subMixin);
                    context.Mixin(__subMixin, __mixinToCompose__);
                    context.PopComposition();
                }
            }
 public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
 {
     context.Mixin(mixin, "A");
     if (context.GetParam(TestParameters.TestCount) == 0)
         context.Mixin(mixin, "B");
     if (context.ChildEffectName == "ChildParamsMixin")
     {
         context.Mixin(mixin, "ChildParamsMixin");
         return;
     }
     if (context.GetParam(TestParameters.TestCount) == 0)
         context.Mixin(mixin, "C");
 }
Ejemplo n.º 47
0
            public void Generate(ShaderMixinSourceTree mixin, ShaderMixinContext context)
            {
                context.Mixin(mixin, "ShaderBase");
                context.Mixin(mixin, "TransformationWAndVP");
                context.Mixin(mixin, "AlbedoFlatShading");

                {
                    var __subMixin = new ShaderMixinSourceTree() { Parent = mixin };
                    context.PushComposition(mixin, "albedoDiffuse", __subMixin);
                    context.Mixin(__subMixin, "ComputeColorTextureCubeBasic", TexturingKeys.TextureCube0);
                    context.PopComposition();
                }
            }
Ejemplo n.º 48
0
            public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
            {
                context.Mixin(mixin, "A");
                context.Mixin(mixin, "B");
                context.Mixin(mixin, "C");

                {
                    var __mixinToCompose__ = "X";
                    var __subMixin = new ShaderMixinSource();
                    context.PushComposition(mixin, "x", __subMixin);
                    context.Mixin(__subMixin, __mixinToCompose__);
                    context.PopComposition();
                }
            }
Ejemplo n.º 49
0
            public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
            {
                context.Mixin(mixin, "SkyboxShader");
                if (context.GetParam(SkyboxKeys.Shader) != null)
                {

                    {
                        var __subMixin = new ShaderMixinSource() { Parent = mixin };
                        context.PushComposition(mixin, "skyboxColor", __subMixin);
                        context.Mixin(__subMixin, context.GetParam(SkyboxKeys.Shader));
                        context.PopComposition();
                    }
                }
            }
            public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
            {
                context.Mixin(mixin, "ColorTransformGroupShader");
                foreach(var colorTransform in context.GetParam(ColorTransformGroupKeys.Transforms))

                {

                    {
                        var __mixinToCompose__ = "ColorTransformCompose";
                        var __subMixin = new ShaderMixinSource();
                        context.PushCompositionArray(mixin, "Transforms", __subMixin);
                        context.Mixin(__subMixin, __mixinToCompose__);
                        context.PopComposition();
                    }
                }
            }
Ejemplo n.º 51
0
            public void Generate(ShaderMixinSourceTree mixin, ShaderMixinContext context)
            {
                context.Mixin(mixin, "ShaderBase");
                context.Mixin(mixin, "TransformationWAndVP");
                mixin.Mixin.AddMacro("MAX_VERTEX_COUNT", 9);
                context.Mixin(mixin, "CameraCube");
                context.Mixin(mixin, "AlbedoFlatShading");
                if (context.GetParam(MaterialParameters.AlbedoDiffuse) != null)

                    {
                        var __subMixin = new ShaderMixinSourceTree() { Parent = mixin };
                        context.PushComposition(mixin, "albedoDiffuse", __subMixin);
                        context.Mixin(__subMixin, context.GetParam(MaterialParameters.AlbedoDiffuse));
                        context.PopComposition();
                    }
            }
Ejemplo n.º 52
0
            public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
            {
                context.Mixin(mixin, "McIntoshOptimizedShader");

                {
                    var __subMixin = new ShaderMixinSource() { Parent = mixin };
                    context.PushComposition(mixin, "directionalBlurA", __subMixin);
                    context.Mixin(__subMixin, "DepthAwareDirectionalBlurUtil", context.GetParam(DepthAwareDirectionalBlurKeys.Count), context.GetParam(DepthAwareDirectionalBlurKeys.TotalTap));
                    context.PopComposition();
                }

                {
                    var __subMixin = new ShaderMixinSource() { Parent = mixin };
                    context.PushComposition(mixin, "directionalBlurB", __subMixin);
                    context.Mixin(__subMixin, "DepthAwareDirectionalBlurUtil", context.GetParam(DepthAwareDirectionalBlurKeys.Count), context.GetParam(DepthAwareDirectionalBlurKeys.TotalTap));
                    context.PopComposition();
                }
            }
Ejemplo n.º 53
0
            public void Generate(ShaderMixinSourceTree mixin, ShaderMixinContext context)
            {
                context.Mixin(mixin, "ShaderBase");
                context.Mixin(mixin, "TransformationWAndVP");
                context.Mixin(mixin, "AlbedoFlatShading");
                if (context.GetParam(MaterialParameters.AlbedoDiffuse) != null)

                    {
                        var __subMixin = new ShaderMixinSourceTree() { Parent = mixin };
                        context.PushComposition(mixin, "albedoDiffuse", __subMixin);
                        context.Mixin(__subMixin, context.GetParam(MaterialParameters.AlbedoDiffuse));
                        context.PopComposition();
                    }
                else

                    {
                        var __subMixin = new ShaderMixinSourceTree() { Parent = mixin };
                        context.PushComposition(mixin, "albedoDiffuse", __subMixin);
                        context.Mixin(__subMixin, "ComputeColorTextureCubeReflect", TexturingKeys.TextureCube0);
                        context.PopComposition();
                    }
            }
Ejemplo n.º 54
0
            public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
            {
                if (context.GetParam(TestParameters.UseComputeColor2))
                {
                    context.Mixin(mixin, "ComputeColor2");
                }
                else if (context.GetParam(TestParameters.UseComputeColorRedirect))
                {
                    context.Mixin(mixin, "ComputeColorRedirect");

                    {
                        var __mixinToCompose__ = "ComputeColor2";
                        var __subMixin = new ShaderMixinSource();
                        context.PushComposition(mixin, "ColorRedirect", __subMixin);
                        context.Mixin(__subMixin, __mixinToCompose__);
                        context.PopComposition();
                    }
                }
                else
                {
                    context.Mixin(mixin, "ComputeColor");
                }
            }
            public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
            {
                context.Mixin(mixin, "XenkoEffectBase");
                var extensionPixelStageSurfaceShaders = context.GetParam(MaterialKeys.PixelStageSurfaceShaders);
                if (extensionPixelStageSurfaceShaders != null)
                {
                    context.Mixin(mixin, "MaterialSurfacePixelStageCompositor");

                    {
                        var __mixinToCompose__ = (extensionPixelStageSurfaceShaders);
                        var __subMixin = new ShaderMixinSource();
                        context.PushComposition(mixin, "materialPixelStage", __subMixin);
                        context.Mixin(__subMixin, __mixinToCompose__);
                        context.PopComposition();
                    }

                    {
                        var __mixinToCompose__ = context.GetParam(MaterialKeys.PixelStageStreamInitializer);
                        var __subMixin = new ShaderMixinSource();
                        context.PushComposition(mixin, "streamInitializerPixelStage", __subMixin);
                        context.Mixin(__subMixin, __mixinToCompose__);
                        context.PopComposition();
                    }
                    var extensionPixelStageSurfaceFilter = context.GetParam(MaterialKeys.PixelStageSurfaceFilter);
                    if (extensionPixelStageSurfaceFilter != null)
                    {
                        context.Mixin(mixin, (extensionPixelStageSurfaceFilter));
                    }
                }
                context.Mixin(mixin, "XenkoLighting");
                if (context.ChildEffectName == "ShadowMapCaster")
                {
                    context.Mixin(mixin, "ShadowMapCaster");
                    return;
                }
            }
 public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
 {
     context.Mixin(mixin, "LambertianPrefilteringSHPass2", context.GetParam(LambertianPrefilteringSHParameters.BlockSize), context.GetParam(SphericalHarmonicsParameters.HarmonicsOrder));
 }
 public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
 {
     context.Mixin(mixin, "ParadoxEffectBase");
     context.Mixin(mixin, "MaterialFrontBackBlendShader", context.GetParam(MaterialFrontBackBlendShaderKeys.UseNormalBackFace));
 }
Ejemplo n.º 58
0
        /// <summary>
        /// Generates a <see cref="ShaderMixinSource" /> for the specified names and parameters.
        /// </summary>
        /// <param name="pdxfxEffectName">The name.</param>
        /// <param name="properties">The properties.</param>
        /// <returns>The result of the mixin.</returns>
        /// <exception cref="System.ArgumentNullException">
        /// pdxfxEffectName
        /// or
        /// properties
        /// </exception>
        /// <exception cref="System.ArgumentException">pdxfxEffectName</exception>
        public static ShaderMixinSource Generate(string pdxfxEffectName, ParameterCollection properties)
        {
            if (pdxfxEffectName == null) throw new ArgumentNullException("pdxfxEffectName");

            if (properties == null)
                throw new ArgumentNullException("properties");

            // Get the effect name and child effect name "RootEffectName.ChildEffectName"
            var effectName = GetEffectName(pdxfxEffectName);
            var rootEffectName = effectName.Key;
            var childEffectName = effectName.Value;

            IShaderMixinBuilder builder;
            Dictionary<string, IShaderMixinBuilder> builders;
            lock (RegisteredBuilders)
            {
                if (!TryGet(rootEffectName, out builder))
                    throw new ArgumentException(string.Format("Pdxfx effect [{0}] not found", rootEffectName), "pdxfxEffectName");

                builders = new Dictionary<string, IShaderMixinBuilder>(RegisteredBuilders);
            }

            // TODO cache mixin context and avoid to recreate one (check if if thread concurrency could occur here)
            var mixinTree = new ShaderMixinSource() { Name = pdxfxEffectName };
            var context = new ShaderMixinContext(mixinTree, properties, builders) { ChildEffectName = childEffectName };
            try
            {
                builder.Generate(mixinTree, context);
            }
            catch (ShaderMixinDiscardException discard)
            {
                // We don't rethrow as this exception is on purpose to early exit/escape from a shader mixin
            }
            return mixinTree;
        }
Ejemplo n.º 59
0
 public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
 {
     context.Mixin(mixin, "CombineFrontCoCShader", context.GetParam(CombineLevelsFromCoCKeys.LevelCount));
 }
Ejemplo n.º 60
0
 public void Generate(ShaderMixinSource mixin, ShaderMixinContext context)
 {
     context.Mixin(mixin, "GaussianBlurShader", context.GetParam(GaussianBlurKeys.Count), context.GetParam(GaussianBlurKeys.VerticalBlur));
 }