{
    "Name": "ImagePresentation",
    "OverrideMaterial": "engine:pbrCommon.rematerialdefinition",
    "Parameters": {
        "Constants": {
            "imageViewingMode": "0",
            "orientation": "1",
            "monoImageTextureIndex": "0",
            "shouldResizeMeshInVertexShader": "true",
            "scaleFactorForCornerRadius": "[1.0, 1.0]",
            "alchemistGenerationEffectStrength": "0.0",
            "alchemistGenerationSweepUpDuration": "0.0",
            "timeSinceAlchemistAnimationStarted": "0.0",
            "fakeFresnelStrength" : "0.06",
            "fakeFresnelMaxDist" : "0.004",
            "fakeFresnelFalloff" : "2.0",
        },
        "Textures": {
            "imageTextureArray": "fallback.blackArray",
            "mixedSpillTexture": "fallback.black",
            "spatialLoadingTexture": "fallback.black",
            "alchemistLoadingTexture": "fallback.black",
            "spatialMediaLUT": "engine:spatial_media_4channel_map_sq.exr",
            "textureVisualDepth": "rendergraph.VisualDepthTexture",
            "textureSUOcclusionAlphaMask": "rendergraph.SUOcclusionAlphaMask",
            "textureImmersiveEnvironmentMask": "rendergraph.immersiveEnvironmentMask"
        }
    },
    "Techniques": [
        {
            "Name": "ImageColorPresentation",
            "VertexShader": {
                "Entry": "vsImagePresentation"
            },
            "PixelShader": {
                "Entry": "fsImageColorPresentation"
            },
            "State" : {
                "PreferProgrammableBlending" : true,
                "AlphaBlend"                 : true,
                "AlphaBlendOperation"        : "Add",
                "AlphaSourceFactor"          : "One",
                "AlphaDestinationFactor"     : "OneMinusSourceAlpha",
                "RgbBlendOperation"          : "Add",
                "RgbSourceFactor"            : "One",
                "RgbDestinationFactor"       : "OneMinusSourceAlpha",
                "WriteDepth"                 : true,
                "DepthCompareFunction"       : "GreaterEqual"
            },
            "FunctionConstants" : {
                "EnableImageSpecularAndFresnel" : "false",
                "EnableInverseToneMapping" : "false",
                "EnableClipping" : "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"
            },
            "Variations" : {
              "EnableImageSpecularAndFresnel" : ["false", "true"],
              "EnableClipping"  : ["false", "true"],
              "EnableInverseToneMapping" : ["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"]
            },
            "RuntimeFunctionConstantDefaults" : {
              "EnableImageSpecularAndFresnel" : "true",
              "EnableClipping"  : "true",
              "EnableInverseToneMapping" : "true",
              "EnableBtMask" : "true",
              "EnableUIBlending" : "true",
              "EnableDepthMitigation" : "true",
              "EnableVisualDepthStaticOcclusion" : "true",
              "EnableSceneUnderstandingStaticOcclusion" : "true",
              "IsVisualDepthStaticOcclusionTextureAvailable" : "true",
              "EnableDitherTransitionToRenderFarPlane" : "true",
              "RenderForBlur" : "false",
              "EnableSpatialFocus" : "true",
              "EnableGlow"         : "false",
              "PerceptualBlendingMode" : "0",
              "EnableNearFieldVignetting" : "true"
            },
            "SupportsRuntimeFunctionConstants" : true,
            "AllowRuntimeTechniqueStateOverride" : true,
            "PreloadOptions" : {
                "PixelFormat" : [115, 81],
                "SampleCount" : [4, 1]
            }
        },
        {
            "Name": "ImageColorPresentationOpaque",
            "InheritFromTechnique": "ImageColorPresentation",
            "InheritState": false,
            "State" : {
                "WriteDepth"                 : true,
                "DepthCompareFunction"       : "Greater"
            },
            "FunctionConstants" : {
                "EnableTransparency" : "false",
                "DisableFadeOpacity" : "true"
            },
            "Variations" : {
                "EnableBtMask" : [],
                "EnableUIBlending" : []
            },
            "RuntimeFunctionConstantDefaults" : {
                "EnableBtMask" : "false",
                "EnableUIBlending" : "false"
            },
            "AllowRuntimeTechniqueStateOverride" : true
        },
        {
            "Name": "ImagePresentationDepthOnly",
            "InheritFromTechnique": "ImageColorPresentationOpaque",
            "InheritState": false,
            "State" : {
                "ColorWriteMask"             : "None",
                "WriteDepth"                 : true,
                "DepthCompareFunction"       : "Greater"
            },
            "FunctionConstants" : {
                "EnableDitherFadeNFV" : "false"
            },
            "Variations" : {
              "EnableDitherFadeNFV" : ["false", "true"]
            },
            "RuntimeFunctionConstantDefaults" : {
                "EnableDitherFadeNFV" : "true"
            }
        },
        {
            "Name": "ImageColorPresentationFadeOpaque",
            "InheritFromTechnique": "ImageColorPresentation",
            "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": "ImageColorPresentationFadeOpaque_BackCompat",
            "InheritFromTechnique": "ImageColorPresentationFadeOpaque",
            "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": "ImageColorPresentationOpaque"
    },
    "TechniqueMappingOverrides": {
        "Fade": {
            "FadeDepthPrepass": "ImagePresentationDepthOnly",
            "FadeOpaque": "ImageColorPresentationFadeOpaque",
            "Transparent": "ImageColorPresentationFadeOpaque_BackCompat"
        }
    }
}
