{
    "Name": "MXIAlphaOffscreenOpaqueMaterialDefinition",
    "OverrideMaterial": "engine:engineDefaults.rematerialdefinition",
    "Parameters": {
        "Constants": {
            "collapseTransform": "[1.0,0.0,0.0,0.0, 0.0,1.0,0.0,0.0, 0.0,0.0,1.0,0.0, 0.0,0.0,0.0,1.0]",
            "splitDepth" : "10000",
            "vertexStatusToDraw" : "0",
            "screenUVSubRect" : "[-1, 1, 1, 1]"
        }
    },
    "Techniques": [
        {
            "Name": "MXIAlphaOpaque",
            "VertexShader": {
                "Library" : "engine:mxi.metallib",
                "Entry": "vsMXI"
            },
            "PixelShader": {
                "Library" : "engine:mxi.metallib",
                "Entry": "fsMXIDrawOnesDepthAsColor"
            },
            "InheritState": false,
            "State" : {
                "WriteDepth"           : true,
                "DepthCompareFunction" : "Always",
                "RenderAttachmentState" : [
                    {
                        "PreferProgrammableBlending"    : false,
                        "AlphaBlend"                    : true,
                        "AlphaBlendOperation"           : "Add",
                        "AlphaSourceFactor"             : "One",
                        "AlphaDestinationFactor"        : "OneMinusSourceAlpha",
                        "RgbBlendOperation"             : "Add",
                        "RgbSourceFactor"               : "One",
                        "RgbDestinationFactor"          : "OneMinusSourceAlpha"
                    },
                    {
                        "PreferProgrammableBlending"    : false,
                        "AlphaBlend"                    : true,
                        "AlphaBlendOperation"           : "Max",
                        "AlphaSourceFactor"             : "One",
                        "AlphaDestinationFactor"        : "One",
                        "RgbBlendOperation"             : "Max",
                        "RgbSourceFactor"               : "One",
                        "RgbDestinationFactor"          : "One"
                    }
                ]
            },
            "FunctionConstants": {
                "EnableMultiUVs"        : "true"
             },
            "SupportsRuntimeFunctionConstants"      : true,
            "AllowRuntimeTechniqueStateOverride"    : true
        },
        {
            "Name": "MXICrackFill",
            "VertexShader": {
                "Library" : "engine:mxi.metallib",
                "Entry": "vsMXI"
            },
            "PixelShader": {
                "Library" : "engine:mxi.metallib",
                "Entry": "fsMXIDrawOnes"
            },
            "InheritState": false,
            "State" : {
                "PreferProgrammableBlending"    : false,
                "AlphaBlend"                    : true,
                "AlphaBlendOperation"           : "Add",
                "AlphaSourceFactor"             : "One",
                "AlphaDestinationFactor"        : "OneMinusSourceAlpha",
                "RgbBlendOperation"             : "Add",
                "RgbSourceFactor"               : "One",
                "RgbDestinationFactor"          : "OneMinusSourceAlpha",
                "WriteDepth"                    : true,
                "DepthCompareFunction"          : "Always"
            },
            "FunctionConstants": {
                "EnableMultiUVs"        : "true"
            },
            "SupportsRuntimeFunctionConstants"      : true,
            "AllowRuntimeTechniqueStateOverride"    : true
        }
    ],
    "TechniqueMapping": {
        "MXIOffscreenOpaque": "MXIAlphaOpaque",
        "MXICrackFillOpaque": "MXICrackFill"
    }
}
