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"); } }