{ "Name": "GradientTransitionMaterialDefinition", "OverrideMaterial": "engine:engineDefaults.rematerialdefinition", "Parameters": { "Constants": { "topColor": "[1,0,0]", "bottomColor": "[0,1,0]", "topPosition": "0.60", "bottomPosition": "0.40", "opacity": "0.50" } }, "Techniques": [{ "Name": "Transparent", "VertexShader": { "Entry": "vsGradientTransition", "Library": "default.metallib" }, "PixelShader": { "Entry": "fsGradientTransition", "Library": "default.metallib" }, "State" : { "AlphaBlend" : true, "WriteDepth" : false, "DepthCompareFunction" : "Always", "AlphaBlendOperation" : "Add", "AlphaSourceFactor" : "One", "AlphaDestinationFactor" : "OneMinusSourceAlpha", "RgbBlendOperation" : "Add", "RgbSourceFactor" : "One", "RgbDestinationFactor" : "OneMinusSourceAlpha" }, "SupportsRuntimeFunctionConstants" : true, "PreloadOptions" : { "OverrideFlags" : [0, 2] } }, { "Name": "DepthOnly", "VertexShader": { "Entry": "vsGradientTransition", "Library": "default.metallib" }, "State" : { "WriteDepth" : true, "DepthCompareFunction" : "Greater" }, "SupportsRuntimeFunctionConstants" : true, "PreloadOptions" : { "OverrideFlags" : [0, 2] } }], "TechniqueGroups" : [{ "Name": "GradientTransitionGroup", "Techniques" : ["Transparent", "DepthOnly"] }], "TechniqueMapping": { "Transparent": "GradientTransitionGroup" } }