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); } }
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(); } }
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"); }
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"); } }
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(); } }
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"); }
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"); } }
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(); } } }
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(); } } }
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(); } } } }
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(); } } } }
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(); } }
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)); }
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(); } }
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); } }
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(); } }
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(); } } }
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(); } } } }
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"); }
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"); } }
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(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"); } } }
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"); } }
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); } }
public void Generate(ShaderMixinSource mixin, ShaderMixinContext context) { context.Mixin(mixin, "StrideForwardShadingEffect"); if (context.GetParam(AtmosphereForwardShadingEffectParameters.RenderAerialPerspective)) { context.Mixin(mixin, "AtmosphereForwardRender"); } }
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"); } }
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)); }
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"); } }
public void Generate(ShaderMixinSource mixin, ShaderMixinContext context) { if (context.GetParam(CustomShaderKeys.SwitchEffectLevel) < 10) { context.Mixin(mixin, "CustomShader"); } else { context.Mixin(mixin, "CustomShader2"); } }
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; } }
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(); } }
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"); }
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(); } }
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(); } }
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(); } } }
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(); } }
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(); } }
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)); }
/// <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; }
public void Generate(ShaderMixinSource mixin, ShaderMixinContext context) { context.Mixin(mixin, "CombineFrontCoCShader", context.GetParam(CombineLevelsFromCoCKeys.LevelCount)); }
public void Generate(ShaderMixinSource mixin, ShaderMixinContext context) { context.Mixin(mixin, "GaussianBlurShader", context.GetParam(GaussianBlurKeys.Count), context.GetParam(GaussianBlurKeys.VerticalBlur)); }