{
    "Name": "VideoMaterial",
    "OverrideMaterial": "engine:engineDefaults.rematerialdefinition",
    "Parameters": {
        "Constants": {
            "YCbCrMatrixOption" : "0",
            "imageFunctionOption" : "0",
            "stereoModeOption" : "0",
            "hdrCroppingUVAABB" : "[0, 0, 0, 0]",
            "hdrCroppingUVScaleUp" : "[1, 1]",
            "colorSpaceConversionMatrix" : "[1.0,0.0,0.0, 0.0,1.0,0.0, 0.0,0.0,1.0]",
            "colorSpaceTransformationMatrix" : "[1.0,0.0,0.0, 0.0,1.0,0.0, 0.0,0.0,1.0]",
            "videoGammaToneCurveEnabled" : "false",
            "videoColorSpaceTransformationEnabled" : "false",
            "videoColorSpaceTransformationMatrix" : "[1.0,0.0,0.0, 0.0,1.0,0.0, 0.0,0.0,1.0]",
            "videoBrightnessScalingEnabled" : "false",
            "videoBrightnessScale" : "1.0",
            "videoTransitionAlpha" : "1.0",
            "videoGammaBoostEnabled" : "false",
            "imsColorOfFade" : "[0.0, 0.0, 0.0]",
            "imsColorFade" : "1.0",
            "imsShotFlop" : "false",
            "uvTransformationMatrix" : "[1.0,0.0, 0.0,1.0]",
            "uvTransformationPivot" : "[0.5, 0.5]",
            "uvScaleVector" : "[1.0, 1.0]",
            "uvTranslationVector" : "[0.0, 0.0]",
            "uvMin": "[0.0, 0.0]",
            "uvMax": "[1.0, 1.0]",
            "uvCenter": "[0.5, 0.5]",
            "mipBias": "0.0",
            "videoEdgeAABlendMode": "0",
            "videoUvHorizontalDisparityAdjustment" : "0.0",
            "videoVrrWarpMode": "0",
            "videoVrrScreenSize": "[0.0, 0.0]",
            "videoVrrTextureSizeReciprocal": "[0.0, 0.0]",
            "videoVrrDebugMode": "0",
            "videoSpatialGalleryScaleFactorForCornerRadius" : "[0.0, 0.0]",
            "videoGammaTableScale" : "1.0",
            "fakeFresnelStrength" : "0.06",
            "fakeFresnelMaxDist" : "0.004",
            "fakeFresnelFalloff" : "2.0"
        },
        "Buffers": {
            "clippingConstants" : "scene.clipping",
            "reGlowEffects" : "fallback.zeros2048bytes",
            "videoVrrMapData" : "fallback.zeros",
            "videoWarpAtlasParams" : "fallback.zeros128bytes",
            "videoFoveaParams" : "fallback.zeros1024bytes"
        },
        "Textures": {
            "stereoMaskTexture"  : "fallback.white",
            "videoLoadingTexture": "fallback.black",
            "texturePlane0": "fallback.black",
            "texturePlane1": "fallback.black",
            "texturePlane2": "fallback.white",
            "texturePlane0ChannelID2": "fallback.black",
            "texturePlane1ChannelID2": "fallback.black",
            "texturePlane2ChannelID2": "fallback.white",
            "videoTexturePlane0[0]": "fallback.black",
            "videoTexturePlane1[0]": "fallback.black",
            "videoTexturePlane2[0]": "fallback.white",
            "videoTexturePlane0[1]": "fallback.black",
            "videoTexturePlane1[1]": "fallback.black",
            "videoTexturePlane2[1]": "fallback.white",
            "textureBlueNoise": "engine:blueNoise64RGBA8.ktx",
            "textureSpill": "fallback.black",
            "videoGammaToneCurvePowerFunctionTable": "fallback.white1D",
            "videoGammaBoostPowerFunctionTable": "fallback.white1D",
            "dmWarpedAlphaMask" : "rendergraph.DMWarpedAlphaMask",
            "videoBlur": "fallback.black",
            "spatialMediaLUT": "fallback.white",
            "spillDiffuse[0]": "fallback.black",
            "spillDiffuse[1]": "fallback.black",
            "textureVisualDepth": "rendergraph.VisualDepthTexture",
            "textureImmersiveEnvironmentMask": "rendergraph.immersiveEnvironmentMask",
            "textureSUOcclusionAlphaMask": "rendergraph.SUOcclusionAlphaMask",
            "videoFoveaTexturePlane0[0]": "fallback.white",
            "videoFoveaTexturePlane1[0]": "fallback.white",
            "videoFoveaTexturePlane2[0]": "fallback.white",
            "videoFoveaTexturePlane0[1]": "fallback.white",
            "videoFoveaTexturePlane1[1]": "fallback.white",
            "videoFoveaTexturePlane2[1]": "fallback.white"
        }
    },
    "DebugMappings": [
        {
            "Name": "VideoDebug",
            "Mappings": {
                "NoDebug": 0,
                "VertexUV": 1,
                "DerivedNormal": 2,
                "DerivedTangent": 3,
                "DerivedBitangent": 4,
                "FinalColor": 5,
                "FinalAlpha": 6,
                "Breakthrough": 7,
                "DistanceToGazeHitPoint": 8,
                "DepthMitigation": 9,
                "DepthMitigationDarkening": 10,
                "PerPixelNearFieldVignetting": 11,
                "Clipping": 12
            }
        }
    ],
    "Techniques": [
        {
            "Name": "VideoColor",
            "VertexShader": {
                "Entry": "vsVideoPlayback"
            },
            "PixelShader": {
                "Entry": "fsVideoColorPlayback"
            },
            "State" : {
                "PreferProgrammableBlending" : true,
                "AlphaBlend"                : true,
                "AlphaBlendOperation"       : "Add",
                "AlphaSourceFactor"         : "One",
                "AlphaDestinationFactor"    : "OneMinusSourceAlpha",
                "RgbBlendOperation"         : "Add",
                "RgbSourceFactor"           : "One",
                "RgbDestinationFactor"      : "OneMinusSourceAlpha",
                "WriteDepth"                : true,
                "DepthCompareFunction"      : "GreaterEqual"
            },
            "PreloadOptions" : {
            "PixelFormat" : [115, 81],
            "SampleCount" : [4, 1]
            },
            "DebugMapping": "VideoDebug",
            "FunctionConstants" : {
                "EnableHDRCroppingUVRemapping" : "false",
                "EnableIMDynamicMask" : "false",
                "EnableIMMonoMask" : "false",
                "EnableTriPlanarVideoSupport" : "false",
                "IFilter" : "0",
                "ExperienceMode" : "0",
                "EnableInverseToneMapping" : "false",
                "EnableVideoColorSpaceTransformation" : "false",
                "EnableClipping" : "false",
                "EnableVideoColorTransformation" : "false",
                "EnableScreenVideoLetterBoxPadding" : "false",
                "EnableBtMask" : "false",
                "EnableUIBlending" : "false",
                "EnableDepthMitigation" : "false",
                "EnableVisualDepthStaticOcclusion" : "false",
                "EnableSceneUnderstandingStaticOcclusion" : "false",
                "IsVisualDepthStaticOcclusionTextureAvailable" : "false",
                "EnableDitherTransitionToRenderFarPlane" : "false",
                "RenderForBlur" : "false",
                "EnableTransparency" : "true",
                "EnableSpatialFocus" : "false",
                "EnableGlow"         : "false",
                "PerceptualBlendingMode" : "0",
                "EnableNearFieldVignetting": "false",
                "VideoSamplingMode" : "0",
                "EnableVideoVrrRendering" : "false",
                "EnableVideoFoveaRendering" : "false",
                "EnableVideoColorInvert" : "false",
                "EnableVideoLegacyMode" : "false",
                "EnableVideoSpecularAndFresnel" : "false",
                "EnableVideoSpatialRendering" : "false",
                "EnableVideoSpatialGalleryRendering" : "false",
                "VideoTriangleFillMode": "0"
            },
            "Variations" : {
              "EnableClipping"  : ["false", "true"],
              "EnableTriPlanarVideoSupport" : ["false", "true"],
              "IFilter" : ["0", "1", "2"],
              "ExperienceMode" : ["0", "1", "2", "3"],
              "EnableInverseToneMapping" : ["false", "true"],
              "EnableHDRCroppingUVRemapping" : ["false", "true"],
              "EnableIMDynamicMask" : ["false", "true"],
              "EnableIMMonoMask" : ["false", "true"],
              "EnableVideoColorSpaceTransformation" : ["false", "true"],
              "EnableVideoColorTransformation" : ["false", "true"],
              "EnableScreenVideoLetterBoxPadding" : ["false", "true"],
              "EnableBtMask" : ["false", "true"],
              "EnableUIBlending" : ["false", "true"],
              "EnableDepthMitigation" : ["false", "true"],
              "EnableVisualDepthStaticOcclusion"             : ["false", "true"],
              "EnableSceneUnderstandingStaticOcclusion" : ["false", "true"],
              "IsVisualDepthStaticOcclusionTextureAvailable" : ["false", "true"],
              "EnableDitherTransitionToRenderFarPlane" : ["false", "true"],
              "RenderForBlur" : ["false", "true"],
              "EnableSpatialFocus" : ["false", "true"],
              "EnableGlow" : ["false", "true"],
              "PerceptualBlendingMode" : ["0", "1", "2", "3"],
              "EnableNearFieldVignetting" : ["false", "true"],
              "VideoSamplingMode" : ["0", "1", "2"],
              "EnableVideoVrrRendering" : ["false", "true"],
              "EnableVideoFoveaRendering" : ["false", "true"],
              "EnableVideoColorInvert" : ["false", "true"],
              "EnableVideoLegacyMode" : ["false", "true"],
              "EnableVideoSpecularAndFresnel" : ["false", "true"],
              "EnableVideoSpatialRendering" : ["false", "true"],
              "EnableVideoSpatialGalleryRendering" : ["false", "true"],
              "VideoTriangleFillMode": ["0", "1"]
            },
            "RuntimeFunctionConstantDefaults" : {
              "EnableClipping"  : "true",
              "EnableTriPlanarVideoSupport" : "true",
              "IFilter" : "0",
              "ExperienceMode" : "0",
              "EnableInverseToneMapping" : "true",
              "EnableHDRCroppingUVRemapping" : "true",
              "EnableIMDynamicMask" : "false",
              "EnableIMMonoMask" : "false",
              "EnableVideoColorSpaceTransformation" : "true",
              "EnableVideoColorTransformation" : "true",
              "EnableScreenVideoLetterBoxPadding" : "true",
              "EnableBtMask" : "true",
              "EnableUIBlending" : "true",
              "EnableDepthMitigation" : "true",
              "EnableVisualDepthStaticOcclusion" : "true",
              "EnableSceneUnderstandingStaticOcclusion" : "true",
              "IsVisualDepthStaticOcclusionTextureAvailable" : "true",
              "EnableDitherTransitionToRenderFarPlane" : "true",
              "RenderForBlur" : "false",
              "EnableSpatialFocus" : "true",
              "EnableGlow"         : "false",
              "PerceptualBlendingMode" : "0",
              "EnableNearFieldVignetting" : "false",
              "VideoSamplingMode": "0",
              "EnableVideoVrrRendering" : "true",
              "EnableVideoFoveaRendering" : "true",
              "EnableVideoColorInvert" : "false",
              "EnableVideoLegacyMode" : "false",
              "EnableVideoSpecularAndFresnel" : "true",
              "EnableVideoSpatialRendering" : "true",
              "EnableVideoSpatialGalleryRendering" : "true",
              "VideoTriangleFillMode": "0"
            },
            "SupportsRuntimeFunctionConstants" : true,
            "AllowRuntimeTechniqueStateOverride" : true,
            "UseDynamicAttributeStride" : true
        },
        {
            "Name": "VideoColorOpaque",
            "InheritFromTechnique": "VideoColor",
            "InheritState": false,
            "State" : {
                "WriteDepth"                : true,
                "DepthCompareFunction"      : "Greater"
            },
            "FunctionConstants" : {
                "EnableTransparency" : "false",
                "DisableFadeOpacity" : "true"
            },
            "Variations" : {
                "EnableBtMask" : [],
                "EnableUIBlending" : []
            },
            "RuntimeFunctionConstantDefaults" : {
                "EnableBtMask" : "false",
                "EnableUIBlending" : "false",
            },
            "AllowRuntimeTechniqueStateOverride" : true
        },
        {
            "Name": "VideoDepthOnly",
            "InheritFromTechnique": "VideoColorOpaque",
            "InheritState": false,
            "State" : {
                "ColorWriteMask": "None",
                "WriteDepth": true,
                "DepthCompareFunction": "Greater"
            },
            "FunctionConstants" : {
                "EnableDitherFadeNFV" : "false"
            },
            "Variations" : {
              "EnableDitherFadeNFV" : ["false", "true"]
            },
            "RuntimeFunctionConstantDefaults" : {
                "EnableDitherFadeNFV" : "true"
            }
        },
        {
            "Name": "VideoColorFadeOpaque",
            "InheritFromTechnique": "VideoColor",
            "InheritState": false,
            "State" : {
                "PreferProgrammableBlending" : true,
                "AlphaBlend"                : true,
                "AlphaBlendOperation"       : "Add",
                "AlphaSourceFactor"         : "One",
                "AlphaDestinationFactor"    : "OneMinusSourceAlpha",
                "RgbBlendOperation"         : "Add",
                "RgbSourceFactor"           : "One",
                "RgbDestinationFactor"      : "OneMinusSourceAlpha",
                "WriteDepth"                : false,
                "DepthCompareFunction"      : "GreaterEqual"
            },
            "FunctionConstants" : {
                "EnableTransparency" : "false"
            }
        },
        {
            "Name": "VideoColorFadeOpaque_BackCompat",
            "InheritFromTechnique": "VideoColorFadeOpaque",
            "InheritState": false,
            "State" : {
                "PreferProgrammableBlending" : true,
                "AlphaBlend"                : true,
                "AlphaBlendOperation"       : "Add",
                "AlphaSourceFactor"         : "One",
                "AlphaDestinationFactor"    : "OneMinusSourceAlpha",
                "RgbBlendOperation"         : "Add",
                "RgbSourceFactor"           : "One",
                "RgbDestinationFactor"      : "OneMinusSourceAlpha",
                "WriteDepth"                : true,
                "DepthCompareFunction"      : "GreaterEqual"
            },
            "Tags" : {
                "Transparent_BackCompat" : "True"
            }
        }
    ],
    "TechniqueMapping": {
        "Opaque" : "VideoColorOpaque"
    },
    "TechniqueMappingOverrides": {
        "Fade": {
            "FadeDepthPrepass": "VideoDepthOnly",
            "FadeOpaque": "VideoColorFadeOpaque",
            "Transparent": "VideoColorFadeOpaque_BackCompat"
        }
    }
}
