Skip to main content

Description

Refractive Lens

A convex glass dome that actually refracts — the image inside sits behind the surface and slides around as you move the camera, like looking into a real cornea or a cut gem. Procedural iris out of the box, or drop your own texture in and it parallaxes too.

The trick is one clean Snell refraction. The material treats the visible surface as a little convex cap over an inner plane: it bends the view direction through the dome against the surface normal, then projects that bent ray straight down onto the surface to get a UV offset. Slide the inner image by that offset and your eye reads it as depth — the thing inside genuinely shifts as the camera orbits, instead of being painted flat on the surface. IOR sets how hard the dome bends (1.0 is dead flat, glass lives around 1.45, crank it past 2 for a gemstone), and Lens Depth sets how deep the cavity feels. The inner image is built procedurally in a tiny HLSL block — radial iris fibres, a ring of facet wedges, a dark pupil in the middle — so it works with zero textures, and a Tint rides over the top for the colour. There's a Fresnel rim on the edge for that wet, glassy sheen, and the whole cap fades out at its silhouette through a soft circular mask so it reads as a rounded lens, not a flat disc. No animated noise anywhere, so it's rock-steady under TSR.

Settings you have to set

None of these come across in the paste, so set them by hand or it won't look right. Pick one blend path:

  • Material DomainSurface, Shading ModelDefault Lit (both paths)
  • Glassy cornea / cap: Blend ModeTranslucent, Translucency Lighting ModeSurface TranslucencyVolume, Refraction MethodNone (the lens does its own UV refraction — you don't want the engine's on top), and wire the Opacity frame.
  • Solid gem / cabochon: Blend ModeOpaque and just leave the Opacity frame unwired. Everything else is the same.
  • Wire each result node into its matching Material pin — they're parked next to the Material node in frames labelled Base Color, Emissive Color, Roughness, Specular, and Opacity. Root links never survive a paste.
  • Two Sided → Off for a normal convex cap.

Params:

  • IOR — how strongly the dome bends the view. 1.0 = flat (no parallax), 1.45 = glass/cornea, 2+ = gemstone. The headline dial.
  • Lens Depth — how far behind the surface the inner image feels. 0 = glued to the surface, hig
material graph

Preview only · open in editor for full material editing

Want this graph on your blog or forum?

0 comments

Sign in to join the discussion.

No comments yet. Be the first.

source
View T3D source (129 KB)expand
Begin Object Class=/Script/UnrealEd.MaterialGraphNode_Comment Name="MaterialGraphNode_Comment_0"
   Begin Object Class=/Script/Engine.MaterialExpressionComment Name="MaterialExpressionComment_C0"
   End Object
   Begin Object Name="MaterialExpressionComment_C0"
      SizeX=440
      SizeY=360
      Text="01 Lens"
      CommentColor=(R=0.104616,G=0.327778,B=0.665387,A=1.000000)
      MaterialExpressionEditorX=-2560
      MaterialExpressionEditorY=-700
      MaterialExpressionGuid=1FA009940B84BDB93F73375973534152
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpressionComment="/Script/Engine.MaterialExpressionComment'MaterialExpressionComment_C0'"
   CommentColor=(R=0.104616,G=0.327778,B=0.665387,A=1.000000)
   NodePosX=-2560
   NodePosY=-700
   NodeWidth=440
   NodeHeight=360
   NodeComment="01 Lens"
   NodeGuid=B637B6C9E897745A0890220AAAA71352
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_1"
   Begin Object Class=/Script/Engine.MaterialExpressionScalarParameter Name="MaterialExpressionScalarParameter_1"
   End Object
   Begin Object Name="MaterialExpressionScalarParameter_1"
      ParameterName="IOR"
      DefaultValue=1.45
      SliderMin=1
      SliderMax=2.5
      Group="01 Lens"
      Desc="Index of refraction of the dome relative to air. 1.0 = no bend (inner image sits flat on the surface); 1.45 = glass/cornea; higher = stronger bend and more parallax."
      MaterialExpressionEditorX=-2480
      MaterialExpressionEditorY=-620
      MaterialExpressionGuid=4D89950E31D81CE90B4D3C59C64CAFAB
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpression="/Script/Engine.MaterialExpressionScalarParameter'MaterialExpressionScalarParameter_1'"
   NodePosX=-2480
   NodePosY=-620
   NodeGuid=476FB7F3DD744AC15DCD4C11DAF170FB
   CustomProperties Pin (PinId=DF4F0460B45E41F8F23963080CB6C47B,PinName="Output",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_Custom_25 2250803C28EC86E6C12EBC8A07FE9774,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_2"
   Begin Object Class=/Script/Engine.MaterialExpressionScalarParameter Name="MaterialExpressionScalarParameter_2"
   End Object
   Begin Object Name="MaterialExpressionScalarParameter_2"
      ParameterName="Lens Depth"
      DefaultValue=0.25
      SliderMin=0
      SliderMax=1
      Group="01 Lens"
      Desc="How far behind the surface the inner content appears to sit, in UV units. Scales the refracted offset: 0 = inner image glued to the surface (no parallax), high = a deep cavity you can look into."
      MaterialExpressionEditorX=-2480
      MaterialExpressionEditorY=-440
      MaterialExpressionGuid=423D1DBA7FCF390D6EA948E043A8D609
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpression="/Script/Engine.MaterialExpressionScalarParameter'MaterialExpressionScalarParameter_2'"
   NodePosX=-2480
   NodePosY=-440
   NodeGuid=48B10A870362E675A577D37B2B8CBAF7
   CustomProperties Pin (PinId=6A7B4CAE15859506BD80B418997409BE,PinName="Output",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_Custom_25 95301792E7DD58F401F91C2896ED60ED,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode_Comment Name="MaterialGraphNode_Comment_3"
   Begin Object Class=/Script/Engine.MaterialExpressionComment Name="MaterialExpressionComment_C3"
   End Object
   Begin Object Name="MaterialExpressionComment_C3"
      SizeX=440
      SizeY=540
      Text="02 Inner Content"
      CommentColor=(R=0.078187,G=0.274677,B=0.571125,A=1.000000)
      MaterialExpressionEditorX=-2560
      MaterialExpressionEditorY=-300
      MaterialExpressionGuid=682E87DD6E1F1085D3B50431F0EAB3F1
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpressionComment="/Script/Engine.MaterialExpressionComment'MaterialExpressionComment_C3'"
   CommentColor=(R=0.078187,G=0.274677,B=0.571125,A=1.000000)
   NodePosX=-2560
   NodePosY=-300
   NodeWidth=440
   NodeHeight=540
   NodeComment="02 Inner Content"
   NodeGuid=1532547A86B56936E25B2337D2FE51D4
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_4"
   Begin Object Class=/Script/Engine.MaterialExpressionScalarParameter Name="MaterialExpressionScalarParameter_4"
   End Object
   Begin Object Name="MaterialExpressionScalarParameter_4"
      ParameterName="Iris Scale"
      DefaultValue=1
      SliderMin=0.25
      SliderMax=4
      Group="02 Inner Content"
      Desc="Zoom of the inner content within the lens. Higher = the iris / facet pattern is smaller and tiles tighter toward the centre."
      MaterialExpressionEditorX=-2480
      MaterialExpressionEditorY=-220
      MaterialExpressionGuid=4103799257946139D9B01632D52121B2
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpression="/Script/Engine.MaterialExpressionScalarParameter'MaterialExpressionScalarParameter_4'"
   NodePosX=-2480
   NodePosY=-220
   NodeGuid=1881474A75AD907CE3842E35E3F6C799
   CustomProperties Pin (PinId=789482BEACCCED8A34770699B39D929F,PinName="Output",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_30 D97364C702A0C20776B9ED8742ACFD6E,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_5"
   Begin Object Class=/Script/Engine.MaterialExpressionScalarParameter Name="MaterialExpressionScalarParameter_5"
   End Object
   Begin Object Name="MaterialExpressionScalarParameter_5"
      ParameterName="Facet Count"
      DefaultValue=6
      SliderMin=0
      SliderMax=24
      Group="02 Inner Content"
      Desc="Number of radial facet wedges in the procedural inner image. 0 = smooth fibrous iris, higher = a cut-gem rosette. Ignored when Use Inner Texture is on."
      MaterialExpressionEditorX=-2480
      MaterialExpressionEditorY=-40
      MaterialExpressionGuid=A6D627F83C3B6E45502AAC5C7658414B
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpression="/Script/Engine.MaterialExpressionScalarParameter'MaterialExpressionScalarParameter_5'"
   NodePosX=-2480
   NodePosY=-40
   NodeGuid=94BCDF068000E73077F372DD31A84E81
   CustomProperties Pin (PinId=598F0B616657744BD7E914E1968CF8C3,PinName="Output",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_Custom_33 E018ED565CC38FBFAD286C7D9C9AFFB7,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_6"
   Begin Object Class=/Script/Engine.MaterialExpressionScalarParameter Name="MaterialExpressionScalarParameter_6"
   End Object
   Begin Object Name="MaterialExpressionScalarParameter_6"
      ParameterName="Pupil Size"
      DefaultValue=0.22
      SliderMin=0
      SliderMax=0.6
      Group="02 Inner Content"
      Desc="Radius of the dark central pupil / culet in the procedural inner image (0..1 of the lens radius). Ignored when Use Inner Texture is on."
      MaterialExpressionEditorX=-2480
      MaterialExpressionEditorY=140
      MaterialExpressionGuid=37C471D3371E9BB95CA87CBBE4EAB2C0
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpression="/Script/Engine.MaterialExpressionScalarParameter'MaterialExpressionScalarParameter_6'"
   NodePosX=-2480
   NodePosY=140
   NodeGuid=FC5E635069D107B3E975CFE280EF7864
   CustomProperties Pin (PinId=7CECDBAC1E1588C796F39924CF9878EF,PinName="Output",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_Custom_33 26260F9E97EC8B7E1CA9D5CB40E5D210,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode_Comment Name="MaterialGraphNode_Comment_7"
   Begin Object Class=/Script/Engine.MaterialExpressionComment Name="MaterialExpressionComment_C7"
   End Object
   Begin Object Name="MaterialExpressionComment_C7"
      SizeX=440
      SizeY=720
      Text="03 Surface"
      CommentColor=(R=0.061246,G=0.230740,B=0.496933,A=1.000000)
      MaterialExpressionEditorX=-2560
      MaterialExpressionEditorY=360
      MaterialExpressionGuid=2589E76D320DA0C97B85558721F6E4F1
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpressionComment="/Script/Engine.MaterialExpressionComment'MaterialExpressionComment_C7'"
   CommentColor=(R=0.061246,G=0.230740,B=0.496933,A=1.000000)
   NodePosX=-2560
   NodePosY=360
   NodeWidth=440
   NodeHeight=720
   NodeComment="03 Surface"
   NodeGuid=D85612586749F3774C7A430F4BAC8BC7
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_8"
   Begin Object Class=/Script/Engine.MaterialExpressionVectorParameter Name="MaterialExpressionVectorParameter_8"
   End Object
   Begin Object Name="MaterialExpressionVectorParameter_8"
      ParameterName="Tint"
      DefaultValue=(R=1,G=0.86,B=0.74,A=1)
      Group="03 Surface"
      Desc="Overall colour multiplier on the inner content. Default is a warm off-white; push toward amber/blue/green for tinted gems or coloured irises."
      MaterialExpressionEditorX=-2480
      MaterialExpressionEditorY=440
      MaterialExpressionGuid=C65F5C98B844E811C115A06375CC0797
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpression="/Script/Engine.MaterialExpressionVectorParameter'MaterialExpressionVectorParameter_8'"
   NodePosX=-2480
   NodePosY=440
   NodeGuid=2E66919E738E4C91E5A0C4CF5A0FF959
   CustomProperties Pin (PinId=E276C78F45E83F8451DBB9D7B89F6007,PinName="Output",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_38 B298578F5F19D8327DD4D75F93075CC5,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=4BF5336412770B9E41CBE7550634D455,PinName="R",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=81B7CC685C886DF1D48C54AF61C904DF,PinName="G",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=AC53F03E2523FE5C3C96D89ECFF2DEF4,PinName="B",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=4E02C5E6F6160104CB0E9FDBDC371981,PinName="A",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_9"
   Begin Object Class=/Script/Engine.MaterialExpressionVectorParameter Name="MaterialExpressionVectorParameter_9"
   End Object
   Begin Object Name="MaterialExpressionVectorParameter_9"
      ParameterName="Rim Tint"
      DefaultValue=(R=0.55,G=0.7,B=1,A=1)
      Group="03 Surface"
      Desc="Colour of the Fresnel edge highlight added as emissive — the wet, glassy sheen around the dome's silhouette."
      MaterialExpressionEditorX=-2480
      MaterialExpressionEditorY=620
      MaterialExpressionGuid=A0B614DB9D4AF5AB2C81EE4F5671B79D
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpression="/Script/Engine.MaterialExpressionVectorParameter'MaterialExpressionVectorParameter_9'"
   NodePosX=-2480
   NodePosY=620
   NodeGuid=1579442CF821C2DD6B3E21AA8B8A3D46
   CustomProperties Pin (PinId=E07F6048ECE853EA7A855640F2D59CF0,PinName="Output",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_41 F4B1386F8829B076B7147DC105746F3A,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=F23B7F8D91F7117A019D75A3C0FE7765,PinName="R",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=B15E84B5D0C5602D6EDD1F52740E4566,PinName="G",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=06644483D46972E183844FCBE0A4F51C,PinName="B",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=3BBBCDBBCF8054677672C5CC45A0579A,PinName="A",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_10"
   Begin Object Class=/Script/Engine.MaterialExpressionScalarParameter Name="MaterialExpressionScalarParameter_10"
   End Object
   Begin Object Name="MaterialExpressionScalarParameter_10"
      ParameterName="Rim Power"
      DefaultValue=4
      SliderMin=0.5
      SliderMax=12
      Group="03 Surface"
      Desc="Tightness of the Fresnel rim. Higher = a thinner, sharper edge glow hugging the silhouette; lower = a broad sheen across the whole cap."
      MaterialExpressionEditorX=-2480
      MaterialExpressionEditorY=800
      MaterialExpressionGuid=C19C57AF6BBF138446E6907ADE4EE002
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpression="/Script/Engine.MaterialExpressionScalarParameter'MaterialExpressionScalarParameter_10'"
   NodePosX=-2480
   NodePosY=800
   NodeGuid=B24B6B8C8FCB8EB5758FDFBA19466B92
   CustomProperties Pin (PinId=44514FD52787490A53FA826DF16A670E,PinName="Output",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_39 C631BE0BAFBDFC8C2963923BFC6E8298,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_11"
   Begin Object Class=/Script/Engine.MaterialExpressionScalarParameter Name="MaterialExpressionScalarParameter_11"
   End Object
   Begin Object Name="MaterialExpressionScalarParameter_11"
      ParameterName="Rim Strength"
      DefaultValue=0.6
      SliderMin=0
      SliderMax=3
      Group="03 Surface"
      Desc="Brightness of the Fresnel rim emissive. 0 = matte cap with no edge glow."
      MaterialExpressionEditorX=-2480
      MaterialExpressionEditorY=980
      MaterialExpressionGuid=C821A1515F0CA2677391F9629A648B59
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpression="/Script/Engine.MaterialExpressionScalarParameter'MaterialExpressionScalarParameter_11'"
   NodePosX=-2480
   NodePosY=980
   NodeGuid=F1E414510CD11DDC6325EFAEF0FBD61C
   CustomProperties Pin (PinId=2CB34552166BA7A79347CBA25ACFFFFD,PinName="Output",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_42 212E67CB5C5D5A3C0CD8BA724B3F3B1F,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_12"
   Begin Object Class=/Script/Engine.MaterialExpressionScalarParameter Name="MaterialExpressionScalarParameter_12"
   End Object
   Begin Object Name="MaterialExpressionScalarParameter_12"
      ParameterName="Roughness"
      DefaultValue=0.08
      SliderMin=0
      SliderMax=1
      Group="03 Surface"
      Desc="Surface roughness of the dome. Low (0.08) reads as polished wet glass; raise for a frosted cabochon."
      MaterialExpressionEditorX=-2480
      MaterialExpressionEditorY=1160
      MaterialExpressionGuid=C3796D7866734416542C74563F27160C
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpression="/Script/Engine.MaterialExpressionScalarParameter'MaterialExpressionScalarParameter_12'"
   NodePosX=-2480
   NodePosY=1160
   NodeGuid=900DE7062F61393E1446CC3F9312804D
   CustomProperties Pin (PinId=BBBE7314A61EA6CD0F1B56D4798FD5D2,PinName="Output",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode_Comment Name="MaterialGraphNode_Comment_13"
   Begin Object Class=/Script/Engine.MaterialExpressionComment Name="MaterialExpressionComment_C13"
   End Object
   Begin Object Name="MaterialExpressionComment_C13"
      SizeX=460
      SizeY=280
      Text="04 Optional Texture"
      CommentColor=(R=0.144128,G=0.068478,B=0.262251,A=1.000000)
      MaterialExpressionEditorX=-2560
      MaterialExpressionEditorY=1300
      MaterialExpressionGuid=82C5C9AFA184529A824B8625334D5C0D
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpressionComment="/Script/Engine.MaterialExpressionComment'MaterialExpressionComment_C13'"
   CommentColor=(R=0.144128,G=0.068478,B=0.262251,A=1.000000)
   NodePosX=-2560
   NodePosY=1300
   NodeWidth=460
   NodeHeight=280
   NodeComment="04 Optional Texture"
   NodeGuid=6A1786D5A48679A649376D30B096155E
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_14"
   Begin Object Class=/Script/Engine.MaterialExpressionTextureSampleParameter2D Name="MaterialExpressionTextureSampleParameter2D_14"
   End Object
   Begin Object Name="MaterialExpressionTextureSampleParameter2D_14"
      ParameterName="Inner Texture"
      Group="04 Optional Texture"
      Texture=Texture2D'/Engine/EngineResources/WhiteSquareTexture'
      SamplerType=SAMPLERTYPE_Color
      Desc="Optional bring-your-own inner image, sampled at the refracted UVs so it gets the same parallax as the procedural iris. Neutral white default, so it is a no-op until Use Inner Texture is on. Toggle it on with the Use Inner Texture switch."
      Coordinates=(Expression="/Script/Engine.MaterialExpressionAdd'MaterialGraphNode_35.MaterialExpressionAdd_35'")
      MaterialExpressionEditorX=-2480
      MaterialExpressionEditorY=1380
      MaterialExpressionGuid=68130D6BC670FC0D1B0AE4B72FBBF847
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpression="/Script/Engine.MaterialExpressionTextureSampleParameter2D'MaterialExpressionTextureSampleParameter2D_14'"
   NodePosX=-2480
   NodePosY=1380
   NodeGuid=28AD2578DB42F031BDC03F01D1A1085A
   CustomProperties Pin (PinId=1D6749DA2F51D80665BC5475DF77CA48,PinName="UVs",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_35 2A3D9AF22AC8AE6B6D196A61F1510B1F,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=967E097EBCDA3E3EAA94BE7D6C7BA880,PinName="ApplyViewMipBias",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=2B43456F20CDA2312D208EF980922286,PinName="RGB",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_36 5D79AD9F943CD1B4E4FA85E5B0F1905F,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=FC1BAA0E73D56743E99851FBEA1F5C66,PinName="R",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=809DED590D4609BFF69058BBB69F7F98,PinName="G",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=D88BE7713706960129C6B314184D58AA,PinName="B",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=E8FF1AA9C4D747A91ADA3B80F4B72D86,PinName="A",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=9889EDCCBC75E96E9915035BF91339A1,PinName="RGBA",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode_Comment Name="MaterialGraphNode_Comment_15"
   Begin Object Class=/Script/Engine.MaterialExpressionComment Name="MaterialExpressionComment_C15"
   End Object
   Begin Object Name="MaterialExpressionComment_C15"
      SizeX=900
      SizeY=560
      Text="Tangent basis (built live from the vertex normal: tangent = N x worldUp, bitangent = N x tangent)"
      CommentColor=(R=1.000000,G=0.194618,B=0.445201,A=1.000000)
      MaterialExpressionEditorX=-1900
      MaterialExpressionEditorY=-700
      MaterialExpressionGuid=30DB30E1BF814BA778103946FD19B9A0
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpressionComment="/Script/Engine.MaterialExpressionComment'MaterialExpressionComment_C15'"
   CommentColor=(R=1.000000,G=0.194618,B=0.445201,A=1.000000)
   NodePosX=-1900
   NodePosY=-700
   NodeWidth=900
   NodeHeight=560
   NodeComment="Tangent basis (built live from the vertex normal: tangent = N x worldUp, bitangent = N x tangent)"
   NodeGuid=3B01DC6DC139AFBC041B6C1D5564844F
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_16"
   Begin Object Class=/Script/Engine.MaterialExpressionVertexNormalWS Name="MaterialExpressionVertexNormalWS_16"
   End Object
   Begin Object Name="MaterialExpressionVertexNormalWS_16"
      MaterialExpressionEditorX=-1840
      MaterialExpressionEditorY=-620
      MaterialExpressionGuid=76D0B6D0E63C964021F42243269A0728
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpression="/Script/Engine.MaterialExpressionVertexNormalWS'MaterialExpressionVertexNormalWS_16'"
   NodePosX=-1840
   NodePosY=-620
   NodeGuid=AFA7C9EF725F587B4C605C7DEFE08983
   CustomProperties Pin (PinId=E071DF719F7E1158E867498A0CDB21AE,PinName="Output",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_18 75EA527294BD9177E41962ECFDDCEC64,MaterialGraphNode_20 3C1C9D77E70C75C4FCDE1DF8DC188EAF,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_17"
   Begin Object Class=/Script/Engine.MaterialExpressionConstant3Vector Name="MaterialExpressionConstant3Vector_17"
   End Object
   Begin Object Name="MaterialExpressionConstant3Vector_17"
      Constant=(R=0,G=0,B=1,A=0)
      MaterialExpressionEditorX=-1840
      MaterialExpressionEditorY=-440
      MaterialExpressionGuid=41BF8128BC8B9C147B9BEEE822B688B7
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpression="/Script/Engine.MaterialExpressionConstant3Vector'MaterialExpressionConstant3Vector_17'"
   NodePosX=-1840
   NodePosY=-440
   NodeGuid=D09A2ED9569150133011ADFB569AD53C
   CustomProperties Pin (PinId=04E7DA3E9EC1AD4913BCB88F5B286D96,PinName="Output",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_18 64682EE1144CE4E55577124C7D9F9E83,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_18"
   Begin Object Class=/Script/Engine.MaterialExpressionCrossProduct Name="MaterialExpressionCrossProduct_18"
   End Object
   Begin Object Name="MaterialExpressionCrossProduct_18"
      A=(Expression="/Script/Engine.MaterialExpressionVertexNormalWS'MaterialGraphNode_16.MaterialExpressionVertexNormalWS_16'")
      B=(Expression="/Script/Engine.MaterialExpressionConstant3Vector'MaterialGraphNode_17.MaterialExpressionConstant3Vector_17'")
      MaterialExpressionEditorX=-1600
      MaterialExpressionEditorY=-540
      MaterialExpressionGuid=C9C6141B649DCE0437939FB4F6DCA66F
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpression="/Script/Engine.MaterialExpressionCrossProduct'MaterialExpressionCrossProduct_18'"
   NodePosX=-1600
   NodePosY=-540
   NodeGuid=01A3AC322726F9C9DF01CC32CE58F98C
   CustomProperties Pin (PinId=75EA527294BD9177E41962ECFDDCEC64,PinName="A",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_16 E071DF719F7E1158E867498A0CDB21AE,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=64682EE1144CE4E55577124C7D9F9E83,PinName="B",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_17 04E7DA3E9EC1AD4913BCB88F5B286D96,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=974E2F110462EE79854DF2E5D3E57FBA,PinName="Output",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_19 0D76504C3CBD1FDA2FEA575A6FB0A986,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_19"
   Begin Object Class=/Script/Engine.MaterialExpressionNormalize Name="MaterialExpressionNormalize_19"
   End Object
   Begin Object Name="MaterialExpressionNormalize_19"
      Input=(Expression="/Script/Engine.MaterialExpressionCrossProduct'MaterialGraphNode_18.MaterialExpressionCrossProduct_18'")
      MaterialExpressionEditorX=-1400
      MaterialExpressionEditorY=-540
      MaterialExpressionGuid=536FF0ABC2509228BD7C11A3DB2E68CC
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpression="/Script/Engine.MaterialExpressionNormalize'MaterialExpressionNormalize_19'"
   NodePosX=-1400
   NodePosY=-540
   NodeGuid=225D15DCFC4FAB063FB3EF26076D32F4
   CustomProperties Pin (PinId=0D76504C3CBD1FDA2FEA575A6FB0A986,PinName="Input",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_18 974E2F110462EE79854DF2E5D3E57FBA,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=B6751F82A1C79F8DF169A1AE6DDF95CC,PinName="Output",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_20 6D128E9AFA4512F498E416D55D73BD42,MaterialGraphNode_Custom_25 9250F565057C79D5292626A2C7EB7545,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_20"
   Begin Object Class=/Script/Engine.MaterialExpressionCrossProduct Name="MaterialExpressionCrossProduct_20"
   End Object
   Begin Object Name="MaterialExpressionCrossProduct_20"
      A=(Expression="/Script/Engine.MaterialExpressionVertexNormalWS'MaterialGraphNode_16.MaterialExpressionVertexNormalWS_16'")
      B=(Expression="/Script/Engine.MaterialExpressionNormalize'MaterialGraphNode_19.MaterialExpressionNormalize_19'")
      MaterialExpressionEditorX=-1180
      MaterialExpressionEditorY=-480
      MaterialExpressionGuid=74249B52E0FD4CD78D9F4E0AF462715D
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpression="/Script/Engine.MaterialExpressionCrossProduct'MaterialExpressionCrossProduct_20'"
   NodePosX=-1180
   NodePosY=-480
   NodeGuid=A5C7B11E2B4CBD321B21C309471665BE
   CustomProperties Pin (PinId=3C1C9D77E70C75C4FCDE1DF8DC188EAF,PinName="A",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_16 E071DF719F7E1158E867498A0CDB21AE,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=6D128E9AFA4512F498E416D55D73BD42,PinName="B",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_19 B6751F82A1C79F8DF169A1AE6DDF95CC,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=FFBD2EA53DBBC9AD39E2DD3267F04711,PinName="Output",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_21 D71D5C694255C7985FA1260366D15705,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_21"
   Begin Object Class=/Script/Engine.MaterialExpressionNormalize Name="MaterialExpressionNormalize_21"
   End Object
   Begin Object Name="MaterialExpressionNormalize_21"
      Input=(Expression="/Script/Engine.MaterialExpressionCrossProduct'MaterialGraphNode_20.MaterialExpressionCrossProduct_20'")
      MaterialExpressionEditorX=-980
      MaterialExpressionEditorY=-480
      MaterialExpressionGuid=A9B2CA98A24582249272A96371B0012F
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpression="/Script/Engine.MaterialExpressionNormalize'MaterialExpressionNormalize_21'"
   NodePosX=-980
   NodePosY=-480
   NodeGuid=AE12AD2258950770676323A716B00FA6
   CustomProperties Pin (PinId=D71D5C694255C7985FA1260366D15705,PinName="Input",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_20 FFBD2EA53DBBC9AD39E2DD3267F04711,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=7BB992022635A49DEDA8362B43F14E40,PinName="Output",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_Custom_25 E8147CE36877AE369F203034EADC65B9,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_22"
   Begin Object Class=/Script/Engine.MaterialExpressionCameraVectorWS Name="MaterialExpressionCameraVectorWS_22"
   End Object
   Begin Object Name="MaterialExpressionCameraVectorWS_22"
      MaterialExpressionEditorX=-1840
      MaterialExpressionEditorY=-260
      MaterialExpressionGuid=2FFCD191DAAB5DCE9D7D4631C5F5E87D
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpression="/Script/Engine.MaterialExpressionCameraVectorWS'MaterialExpressionCameraVectorWS_22'"
   NodePosX=-1840
   NodePosY=-260
   NodeGuid=711BCB564EE68F5DCCBDEF9C942BFA9A
   CustomProperties Pin (PinId=AF31B7E8D5E49F8E1AC91CECAD918BEC,PinName="Output",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_Custom_25 535A3900EF8F57B3B94BB6A5A999A0E7,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_23"
   Begin Object Class=/Script/Engine.MaterialExpressionPixelNormalWS Name="MaterialExpressionPixelNormalWS_23"
   End Object
   Begin Object Name="MaterialExpressionPixelNormalWS_23"
      MaterialExpressionEditorX=-1840
      MaterialExpressionEditorY=-120
      MaterialExpressionGuid=6D8BD1D57F7384412187DFC364693BBA
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpression="/Script/Engine.MaterialExpressionPixelNormalWS'MaterialExpressionPixelNormalWS_23'"
   NodePosX=-1840
   NodePosY=-120
   NodeGuid=D047B9F1E820E09717E29AFE98186F2C
   CustomProperties Pin (PinId=6F8926A6D961F6FDD86E395B7892D6AD,PinName="Output",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_Custom_25 1E34B7FD04F40C272B18CEA8F180C260,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode_Comment Name="MaterialGraphNode_Comment_24"
   Begin Object Class=/Script/Engine.MaterialExpressionComment Name="MaterialExpressionComment_C24"
   End Object
   Begin Object Name="MaterialExpressionComment_C24"
      SizeX=760
      SizeY=480
      Text="Snell refraction -> tangent-plane UV offset (single Custom: bend the view ray through the dome, project onto the tangent basis, scale by depth/facing)"
      CommentColor=(R=0.033105,G=1.000000,B=0.132868,A=1.000000)
      MaterialExpressionEditorX=-940
      MaterialExpressionEditorY=-700
      MaterialExpressionGuid=A3F2F08D57BEB9DA94076E78E7EB4AED
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpressionComment="/Script/Engine.MaterialExpressionComment'MaterialExpressionComment_C24'"
   CommentColor=(R=0.033105,G=1.000000,B=0.132868,A=1.000000)
   NodePosX=-940
   NodePosY=-700
   NodeWidth=760
   NodeHeight=480
   NodeComment="Snell refraction -> tangent-plane UV offset (single Custom: bend the view ray through the dome, project onto the tangent basis, scale by depth/facing)"
   NodeGuid=B294C85F36EC5F7045676A80786E6F9C
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode_Custom Name="MaterialGraphNode_Custom_25"
   Begin Object Class=/Script/Engine.MaterialExpressionCustom Name="MaterialExpressionCustom_25"
   End Object
   Begin Object Name="MaterialExpressionCustom_25"
      Code="// Single-bounce lens refraction -> tangent-plane UV offset.\r\n// View is pixel->camera (CameraVectorWS); negate for the incident ray.\r\nfloat3 I = -normalize(View);\r\nfloat3 N = normalize(Normal);\r\nfloat eta = 1.0 / max(IOR, 1.0);            // air -> denser dome\r\nfloat ci  = -dot(N, I);                     // cos(incident)\r\nfloat k   = 1.0 - eta*eta*(1.0 - ci*ci);    // Snell discriminant\r\n// k<0 would be total internal reflection; saturate keeps the cap graceful\r\nfloat3 T  = eta*I + (eta*ci - sqrt(saturate(k)))*N;\r\n// project the bent ray onto the surface tangent frame -> 2D slide\r\nfloat2 slide = float2(dot(T, TangentX), dot(T, TangentY));\r\n// parallax: rays travel further to the iris plane at grazing angles\r\nfloat facing = max(-dot(N, I), 1e-2);\r\nreturn slide * (Depth / facing);\r\n"
      OutputType=CMOT_Float2
      Description="LensRefract"
      ShowCode=True
      bShowOutputNameOnPin=True
      Inputs(0)=(InputName="View",Input=(Expression="/Script/Engine.MaterialExpressionCameraVectorWS'MaterialGraphNode_22.MaterialExpressionCameraVectorWS_22'"))
      Inputs(1)=(InputName="Normal",Input=(Expression="/Script/Engine.MaterialExpressionPixelNormalWS'MaterialGraphNode_23.MaterialExpressionPixelNormalWS_23'"))
      Inputs(2)=(InputName="TangentX",Input=(Expression="/Script/Engine.MaterialExpressionNormalize'MaterialGraphNode_19.MaterialExpressionNormalize_19'"))
      Inputs(3)=(InputName="TangentY",Input=(Expression="/Script/Engine.MaterialExpressionNormalize'MaterialGraphNode_21.MaterialExpressionNormalize_21'"))
      Inputs(4)=(InputName="IOR",Input=(Expression="/Script/Engine.MaterialExpressionScalarParameter'MaterialGraphNode_1.MaterialExpressionScalarParameter_1'"))
      Inputs(5)=(InputName="Depth",Input=(Expression="/Script/Engine.MaterialExpressionScalarParameter'MaterialGraphNode_2.MaterialExpressionScalarParameter_2'"))
      Desc="Bends the view ray through the dome by one Snell refraction, projects it onto the live tangent basis, and scales by Lens Depth over the facing ratio. Output is a float2 UV offset already in tangent-plane space."
      MaterialExpressionEditorX=-880
      MaterialExpressionEditorY=-620
      MaterialExpressionGuid=74EFDCC299DAC3D4A44BB07B9D29DB7E
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpression="/Script/Engine.MaterialExpressionCustom'MaterialExpressionCustom_25'"
   NodePosX=-880
   NodePosY=-620
   NodeGuid=6811F50A0CCF3828EA5B31AB833AE57A
   CustomProperties Pin (PinId=535A3900EF8F57B3B94BB6A5A999A0E7,PinName="View",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_22 AF31B7E8D5E49F8E1AC91CECAD918BEC,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=1E34B7FD04F40C272B18CEA8F180C260,PinName="Normal",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_23 6F8926A6D961F6FDD86E395B7892D6AD,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=9250F565057C79D5292626A2C7EB7545,PinName="TangentX",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_19 B6751F82A1C79F8DF169A1AE6DDF95CC,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=E8147CE36877AE369F203034EADC65B9,PinName="TangentY",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_21 7BB992022635A49DEDA8362B43F14E40,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=2250803C28EC86E6C12EBC8A07FE9774,PinName="IOR",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_1 DF4F0460B45E41F8F23963080CB6C47B,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=95301792E7DD58F401F91C2896ED60ED,PinName="Depth",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_2 6A7B4CAE15859506BD80B418997409BE,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=2AD2C5B12ABA7F5FB22244DAEBC6BBB9,PinName="Output",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_31 E241DD746446C34E6C88078930A6F377,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode_Comment Name="MaterialGraphNode_Comment_26"
   Begin Object Class=/Script/Engine.MaterialExpressionComment Name="MaterialExpressionComment_C26"
   End Object
   Begin Object Name="MaterialExpressionComment_C26"
      SizeX=820
      SizeY=420
      Text="Inner UVs: centre the mesh UVs, zoom by Iris Scale, slide by the refraction offset"
      CommentColor=(R=1.000000,G=0.686685,B=0.132868,A=1.000000)
      MaterialExpressionEditorX=-80
      MaterialExpressionEditorY=-700
      MaterialExpressionGuid=44B9FFD812AB83F885271C4105833E14
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpressionComment="/Script/Engine.MaterialExpressionComment'MaterialExpressionComment_C26'"
   CommentColor=(R=1.000000,G=0.686685,B=0.132868,A=1.000000)
   NodePosX=-80
   NodePosY=-700
   NodeWidth=820
   NodeHeight=420
   NodeComment="Inner UVs: centre the mesh UVs, zoom by Iris Scale, slide by the refraction offset"
   NodeGuid=1DA97952A66FF6A79900D10BDF14F44D
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_27"
   Begin Object Class=/Script/Engine.MaterialExpressionTextureCoordinate Name="MaterialExpressionTextureCoordinate_27"
   End Object
   Begin Object Name="MaterialExpressionTextureCoordinate_27"
      CoordinateIndex=0
      UTiling=1
      VTiling=1
      MaterialExpressionEditorX=-20
      MaterialExpressionEditorY=-620
      MaterialExpressionGuid=9D847B883E00CFB120E3A8F525C251A1
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpression="/Script/Engine.MaterialExpressionTextureCoordinate'MaterialExpressionTextureCoordinate_27'"
   NodePosX=-20
   NodePosY=-620
   NodeGuid=D457E9361C660A734A81CD4D3C7439E7
   CustomProperties Pin (PinId=ED19E145B01049371F3D16A0F738FB3D,PinName="Output",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_29 FFDE627D1C18B28948AE3C7F0F541B0E,MaterialGraphNode_43 A7849B2225AD011C88DCD530A596B008,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_28"
   Begin Object Class=/Script/Engine.MaterialExpressionConstant2Vector Name="MaterialExpressionConstant2Vector_28"
   End Object
   Begin Object Name="MaterialExpressionConstant2Vector_28"
      R=0.5
      G=0.5
      MaterialExpressionEditorX=-20
      MaterialExpressionEditorY=-460
      MaterialExpressionGuid=AF4C81E5D5B571D8F5EDEE3E71995542
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpression="/Script/Engine.MaterialExpressionConstant2Vector'MaterialExpressionConstant2Vector_28'"
   NodePosX=-20
   NodePosY=-460
   NodeGuid=22878D9320CC36F4B3BACF4D39F1614F
   CustomProperties Pin (PinId=E14FC6D3E1D373EA3EA8F7341A48E07F,PinName="Output",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_29 C0D31C22BD4A707574EB1135D51B7373,MaterialGraphNode_35 0AAF2B40EEAA78E00C8234DAFF1C150B,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_29"
   Begin Object Class=/Script/Engine.MaterialExpressionSubtract Name="MaterialExpressionSubtract_29"
   End Object
   Begin Object Name="MaterialExpressionSubtract_29"
      A=(Expression="/Script/Engine.MaterialExpressionTextureCoordinate'MaterialGraphNode_27.MaterialExpressionTextureCoordinate_27'")
      B=(Expression="/Script/Engine.MaterialExpressionConstant2Vector'MaterialGraphNode_28.MaterialExpressionConstant2Vector_28'")
      MaterialExpressionEditorX=220
      MaterialExpressionEditorY=-560
      MaterialExpressionGuid=66DB8AA12C45A1018640A2A9F3773492
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpression="/Script/Engine.MaterialExpressionSubtract'MaterialExpressionSubtract_29'"
   NodePosX=220
   NodePosY=-560
   NodeGuid=7643DA050503080F430E4714334BB1FA
   CustomProperties Pin (PinId=FFDE627D1C18B28948AE3C7F0F541B0E,PinName="A",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_27 ED19E145B01049371F3D16A0F738FB3D,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=C0D31C22BD4A707574EB1135D51B7373,PinName="B",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_28 E14FC6D3E1D373EA3EA8F7341A48E07F,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=D0A3C4CF0C80860C153B87B74FD42916,PinName="Output",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_30 3253A1B18E3F77236568546552737707,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_30"
   Begin Object Class=/Script/Engine.MaterialExpressionMultiply Name="MaterialExpressionMultiply_30"
   End Object
   Begin Object Name="MaterialExpressionMultiply_30"
      A=(Expression="/Script/Engine.MaterialExpressionSubtract'MaterialGraphNode_29.MaterialExpressionSubtract_29'")
      B=(Expression="/Script/Engine.MaterialExpressionScalarParameter'MaterialGraphNode_4.MaterialExpressionScalarParameter_4'")
      MaterialExpressionEditorX=440
      MaterialExpressionEditorY=-560
      MaterialExpressionGuid=B8A6D0FD8E951EAFEC3A3FB8FC714A79
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpression="/Script/Engine.MaterialExpressionMultiply'MaterialExpressionMultiply_30'"
   NodePosX=440
   NodePosY=-560
   NodeGuid=111C73A4EC077A91E2DF2028F038B0E5
   CustomProperties Pin (PinId=3253A1B18E3F77236568546552737707,PinName="A",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_29 D0A3C4CF0C80860C153B87B74FD42916,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=D97364C702A0C20776B9ED8742ACFD6E,PinName="B",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_4 789482BEACCCED8A34770699B39D929F,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=1D9FE01820400BF0A3B4FE4030D514DB,PinName="Output",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_31 92D84DC0D84A72EB66F5B5A65A555408,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_31"
   Begin Object Class=/Script/Engine.MaterialExpressionAdd Name="MaterialExpressionAdd_31"
   End Object
   Begin Object Name="MaterialExpressionAdd_31"
      A=(Expression="/Script/Engine.MaterialExpressionMultiply'MaterialGraphNode_30.MaterialExpressionMultiply_30'")
      B=(Expression="/Script/Engine.MaterialExpressionCustom'MaterialGraphNode_Custom_25.MaterialExpressionCustom_25'")
      MaterialExpressionEditorX=660
      MaterialExpressionEditorY=-560
      MaterialExpressionGuid=EFB1E78A85ECDBA726A85F7FA0CC2F47
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpression="/Script/Engine.MaterialExpressionAdd'MaterialExpressionAdd_31'"
   NodePosX=660
   NodePosY=-560
   NodeGuid=BEF5794A54B383A58C18129083574556
   CustomProperties Pin (PinId=92D84DC0D84A72EB66F5B5A65A555408,PinName="A",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_30 1D9FE01820400BF0A3B4FE4030D514DB,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=E241DD746446C34E6C88078930A6F377,PinName="B",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_Custom_25 2AD2C5B12ABA7F5FB22244DAEBC6BBB9,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=AA4BDA3A8CBD0682AFAFA0EC16674DE1,PinName="Output",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_Custom_33 657838B77C43EBB2E567B663EA04A506,MaterialGraphNode_35 89817A7076F85419532D853B1A702965,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode_Comment Name="MaterialGraphNode_Comment_32"
   Begin Object Class=/Script/Engine.MaterialExpressionComment Name="MaterialExpressionComment_C32"
   End Object
   Begin Object Name="MaterialExpressionComment_C32"
      SizeX=760
      SizeY=460
      Text="Procedural inner image (radial iris: fibres + facet wedges + pupil)"
      CommentColor=(R=1.000000,G=0.686685,B=0.132868,A=1.000000)
      MaterialExpressionEditorX=-80
      MaterialExpressionEditorY=-240
      MaterialExpressionGuid=EDB5D14930A886FBFAEB30AF17126836
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpressionComment="/Script/Engine.MaterialExpressionComment'MaterialExpressionComment_C32'"
   CommentColor=(R=1.000000,G=0.686685,B=0.132868,A=1.000000)
   NodePosX=-80
   NodePosY=-240
   NodeWidth=760
   NodeHeight=460
   NodeComment="Procedural inner image (radial iris: fibres + facet wedges + pupil)"
   NodeGuid=85CD855F1DC89E162270F5F0A3E2C0CB
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode_Custom Name="MaterialGraphNode_Custom_33"
   Begin Object Class=/Script/Engine.MaterialExpressionCustom Name="MaterialExpressionCustom_33"
   End Object
   Begin Object Name="MaterialExpressionCustom_33"
      Code="// Procedural iris / cut-gem rosette from centred lens UVs (-0.5..0.5 range).\r\n#define RI_H11(x) frac(sin((x)*127.1) * 43758.55)\r\nfloat2 p = CenteredUV;\r\nfloat  r = saturate(length(p) * 2.0);       // 0 centre .. 1 rim\r\nfloat  a = atan2(p.y, p.x);                  // -PI..PI\r\n// radial fibres: high-frequency angular streaks fading outward\r\nfloat  fib = 0.5 + 0.5 * sin(a * 48.0 + r * 6.0);\r\nfib = lerp(0.65, 1.0, fib) * (0.6 + 0.4 * r);\r\n// faceted wedges: quantise the angle into Facets sectors, ridge per sector\r\nfloat  fc = max(Facets, 0.0);\r\nfloat  wedge = (fc > 0.5) ? abs(frac(a / 6.28318 * fc + 0.5) - 0.5) * 2.0 : 1.0;\r\nwedge = lerp(0.7, 1.0, wedge);\r\n// warm iris ramp tinted brighter at the rim, dark pupil/culet at centre\r\nfloat3 col = lerp(float3(0.16,0.10,0.05), float3(0.85,0.62,0.30), r);\r\ncol *= fib * wedge;\r\nfloat pupil = smoothstep(Pupil, Pupil + 0.06, r);  // 0 inside pupil\r\ncol *= pupil;\r\n// faint limbal darkening ring at the very rim\r\ncol *= 1.0 - 0.45 * smoothstep(0.86, 1.0, r);\r\nreturn col;\r\n"
      OutputType=CMOT_Float3
      Description="ProcIris"
      ShowCode=True
      bShowOutputNameOnPin=True
      Inputs(0)=(InputName="CenteredUV",Input=(Expression="/Script/Engine.MaterialExpressionAdd'MaterialGraphNode_31.MaterialExpressionAdd_31'"))
      Inputs(1)=(InputName="Facets",Input=(Expression="/Script/Engine.MaterialExpressionScalarParameter'MaterialGraphNode_5.MaterialExpressionScalarParameter_5'"))
      Inputs(2)=(InputName="Pupil",Input=(Expression="/Script/Engine.MaterialExpressionScalarParameter'MaterialGraphNode_6.MaterialExpressionScalarParameter_6'"))
      Desc="Builds the default inner image procedurally from centred lens UVs: angular fibres, Facets-count radial wedges, a warm centre->rim colour ramp, a dark pupil and a limbal ring. No texture needed."
      MaterialExpressionEditorX=-20
      MaterialExpressionEditorY=-160
      MaterialExpressionGuid=C2A4D18A3F1150D3DB069A2B68876F8D
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpression="/Script/Engine.MaterialExpressionCustom'MaterialExpressionCustom_33'"
   NodePosX=-20
   NodePosY=-160
   NodeGuid=A6E52DBA21F97409A828714390632703
   CustomProperties Pin (PinId=657838B77C43EBB2E567B663EA04A506,PinName="CenteredUV",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_31 AA4BDA3A8CBD0682AFAFA0EC16674DE1,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=E018ED565CC38FBFAD286C7D9C9AFFB7,PinName="Facets",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_5 598F0B616657744BD7E914E1968CF8C3,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=26260F9E97EC8B7E1CA9D5CB40E5D210,PinName="Pupil",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_6 7CECDBAC1E1588C796F39924CF9878EF,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=71D6E143437159804BBCA6AF5189381A,PinName="Output",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_36 C8D96EB79C262EF3B3D31445464E3305,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode_Comment Name="MaterialGraphNode_Comment_34"
   Begin Object Class=/Script/Engine.MaterialExpressionComment Name="MaterialExpressionComment_C34"
   End Object
   Begin Object Name="MaterialExpressionComment_C34"
      SizeX=900
      SizeY=360
      Text="Optional BYO sample (re-bias inner UV to 0..1, sample the texture, switch procedural<->texture)"
      CommentColor=(R=0.144128,G=0.068478,B=0.262251,A=1.000000)
      MaterialExpressionEditorX=-80
      MaterialExpressionEditorY=260
      MaterialExpressionGuid=68BF85C076823B15BDAA75835D39B792
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpressionComment="/Script/Engine.MaterialExpressionComment'MaterialExpressionComment_C34'"
   CommentColor=(R=0.144128,G=0.068478,B=0.262251,A=1.000000)
   NodePosX=-80
   NodePosY=260
   NodeWidth=900
   NodeHeight=360
   NodeComment="Optional BYO sample (re-bias inner UV to 0..1, sample the texture, switch procedural<->texture)"
   NodeGuid=B6488CD77C7385618CE6CF5FA3C0E6FF
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_35"
   Begin Object Class=/Script/Engine.MaterialExpressionAdd Name="MaterialExpressionAdd_35"
   End Object
   Begin Object Name="MaterialExpressionAdd_35"
      A=(Expression="/Script/Engine.MaterialExpressionAdd'MaterialGraphNode_31.MaterialExpressionAdd_31'")
      B=(Expression="/Script/Engine.MaterialExpressionConstant2Vector'MaterialGraphNode_28.MaterialExpressionConstant2Vector_28'")
      MaterialExpressionEditorX=180
      MaterialExpressionEditorY=340
      MaterialExpressionGuid=89D6EE1E43A28443C0014FEB082A6EFE
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpression="/Script/Engine.MaterialExpressionAdd'MaterialExpressionAdd_35'"
   NodePosX=180
   NodePosY=340
   NodeGuid=BE0E513B5FD887923B502876B0A8BC04
   CustomProperties Pin (PinId=89817A7076F85419532D853B1A702965,PinName="A",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_31 AA4BDA3A8CBD0682AFAFA0EC16674DE1,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=0AAF2B40EEAA78E00C8234DAFF1C150B,PinName="B",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_28 E14FC6D3E1D373EA3EA8F7341A48E07F,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=2A3D9AF22AC8AE6B6D196A61F1510B1F,PinName="Output",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_14 1D6749DA2F51D80665BC5475DF77CA48,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_36"
   Begin Object Class=/Script/Engine.MaterialExpressionStaticSwitchParameter Name="MaterialExpressionStaticSwitchParameter_36"
   End Object
   Begin Object Name="MaterialExpressionStaticSwitchParameter_36"
      ParameterName="Use Inner Texture"
      DefaultValue=False
      Group="04 Optional Texture"
      Desc="Mirror of the 04 group switch at the picker site: False = procedural iris, True = the sampled Inner Texture. Both inputs are wired so neither branch dangles."
      A=(Expression="/Script/Engine.MaterialExpressionTextureSampleParameter2D'MaterialGraphNode_14.MaterialExpressionTextureSampleParameter2D_14'")
      B=(Expression="/Script/Engine.MaterialExpressionCustom'MaterialGraphNode_Custom_33.MaterialExpressionCustom_33'")
      MaterialExpressionEditorX=620
      MaterialExpressionEditorY=360
      MaterialExpressionGuid=BBECA2CE16F8529B350B989D968663A0
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpression="/Script/Engine.MaterialExpressionStaticSwitchParameter'MaterialExpressionStaticSwitchParameter_36'"
   NodePosX=620
   NodePosY=360
   NodeGuid=0DF2FB4CEFE655E33D9E07F5572E8CAA
   CustomProperties Pin (PinId=5D79AD9F943CD1B4E4FA85E5B0F1905F,PinName="True",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_14 2B43456F20CDA2312D208EF980922286,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=C8D96EB79C262EF3B3D31445464E3305,PinName="False",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_Custom_33 71D6E143437159804BBCA6AF5189381A,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=77DE278497ED470010A35F589677B1DC,PinName="Output",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_38 186F5371AE15462B1CCAD865265081AC,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode_Comment Name="MaterialGraphNode_Comment_37"
   Begin Object Class=/Script/Engine.MaterialExpressionComment Name="MaterialExpressionComment_C37"
   End Object
   Begin Object Name="MaterialExpressionComment_C37"
      SizeX=980
      SizeY=720
      Text="Compose inner x Tint -> Base Color; Fresnel rim -> Emissive; circular mask -> Opacity"
      CommentColor=(R=1.000000,G=0.450786,B=0.063010,A=1.000000)
      MaterialExpressionEditorX=1120
      MaterialExpressionEditorY=-700
      MaterialExpressionGuid=5C75AEE1758DFB449816454EF5F2FC8F
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpressionComment="/Script/Engine.MaterialExpressionComment'MaterialExpressionComment_C37'"
   CommentColor=(R=1.000000,G=0.450786,B=0.063010,A=1.000000)
   NodePosX=1120
   NodePosY=-700
   NodeWidth=980
   NodeHeight=720
   NodeComment="Compose inner x Tint -> Base Color; Fresnel rim -> Emissive; circular mask -> Opacity"
   NodeGuid=653BBD271040E3BA1252982557701836
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_38"
   Begin Object Class=/Script/Engine.MaterialExpressionMultiply Name="MaterialExpressionMultiply_38"
   End Object
   Begin Object Name="MaterialExpressionMultiply_38"
      A=(Expression="/Script/Engine.MaterialExpressionStaticSwitchParameter'MaterialGraphNode_36.MaterialExpressionStaticSwitchParameter_36'")
      B=(Expression="/Script/Engine.MaterialExpressionVectorParameter'MaterialGraphNode_8.MaterialExpressionVectorParameter_8'")
      MaterialExpressionEditorX=1200
      MaterialExpressionEditorY=-560
      MaterialExpressionGuid=3589D4CA0DD67AC488848631555DFC9F
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpression="/Script/Engine.MaterialExpressionMultiply'MaterialExpressionMultiply_38'"
   NodePosX=1200
   NodePosY=-560
   NodeGuid=A2F6B28A9BE3561C09C771738D4D22F2
   CustomProperties Pin (PinId=186F5371AE15462B1CCAD865265081AC,PinName="A",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_36 77DE278497ED470010A35F589677B1DC,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=B298578F5F19D8327DD4D75F93075CC5,PinName="B",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_8 E276C78F45E83F8451DBB9D7B89F6007,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=700FCE9DACAB0FD38FAE46CF7D1CDD74,PinName="Output",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_48 E15CCB0B3B2059F365F2BF5405D8EC34,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_39"
   Begin Object Class=/Script/Engine.MaterialExpressionFresnel Name="MaterialExpressionFresnel_39"
   End Object
   Begin Object Name="MaterialExpressionFresnel_39"
      BaseReflectFraction=0.04
      ExponentIn=(Expression="/Script/Engine.MaterialExpressionScalarParameter'MaterialGraphNode_10.MaterialExpressionScalarParameter_10'")
      Normal=(Expression="/Script/Engine.MaterialExpressionVertexNormalWS'MaterialGraphNode_40.MaterialExpressionVertexNormalWS_40'")
      MaterialExpressionEditorX=1200
      MaterialExpressionEditorY=-360
      MaterialExpressionGuid=DF81615DE09A5CA868105A21DE9C9D44
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpression="/Script/Engine.MaterialExpressionFresnel'MaterialExpressionFresnel_39'"
   NodePosX=1200
   NodePosY=-360
   NodeGuid=01EAD106C26D8787C4E2455CFFB5587B
   CustomProperties Pin (PinId=C631BE0BAFBDFC8C2963923BFC6E8298,PinName="ExponentIn",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_10 44514FD52787490A53FA826DF16A670E,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=2880B2BD869A31E4AB90F768B38B9446,PinName="BaseReflectFractionIn",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=6AF9C56149C08AAFAA581AC62AC0BC7B,PinName="Normal",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_40 1A900355704B2FD59C8EFC16468EEC83,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=1C6FDF1DCF03473B9B98D73978CFB031,PinName="Output",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_42 FA9691B6D286AA817FC9F6859B7895F9,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_40"
   Begin Object Class=/Script/Engine.MaterialExpressionVertexNormalWS Name="MaterialExpressionVertexNormalWS_40"
   End Object
   Begin Object Name="MaterialExpressionVertexNormalWS_40"
      MaterialExpressionEditorX=1200
      MaterialExpressionEditorY=-200
      MaterialExpressionGuid=8A3F1690EAE775DE0ACF4F7801874241
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpression="/Script/Engine.MaterialExpressionVertexNormalWS'MaterialExpressionVertexNormalWS_40'"
   NodePosX=1200
   NodePosY=-200
   NodeGuid=F17582FE240A0381464E1533F710AEE3
   CustomProperties Pin (PinId=1A900355704B2FD59C8EFC16468EEC83,PinName="Output",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_39 6AF9C56149C08AAFAA581AC62AC0BC7B,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_41"
   Begin Object Class=/Script/Engine.MaterialExpressionMultiply Name="MaterialExpressionMultiply_41"
   End Object
   Begin Object Name="MaterialExpressionMultiply_41"
      A=(Expression="/Script/Engine.MaterialExpressionVectorParameter'MaterialGraphNode_9.MaterialExpressionVectorParameter_9'")
      B=(Expression="/Script/Engine.MaterialExpressionMultiply'MaterialGraphNode_42.MaterialExpressionMultiply_42'")
      MaterialExpressionEditorX=1440
      MaterialExpressionEditorY=-300
      MaterialExpressionGuid=AD9F3F3D8EEB7372F2048B39A653F768
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpression="/Script/Engine.MaterialExpressionMultiply'MaterialExpressionMultiply_41'"
   NodePosX=1440
   NodePosY=-300
   NodeGuid=C5349FF063F4D0EDE585CD4CB19AEBA4
   CustomProperties Pin (PinId=F4B1386F8829B076B7147DC105746F3A,PinName="A",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_9 E07F6048ECE853EA7A855640F2D59CF0,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=98AE4EF96BE984D469FC5F02DB0D9013,PinName="B",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_42 BB658F50CF251951EC8C30EC7EFF22A0,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=B0DC00B9CBB69D99A60BAD2D69EC5337,PinName="Output",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_50 97A8109E5A02CAE9804CC17C8136F816,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_42"
   Begin Object Class=/Script/Engine.MaterialExpressionMultiply Name="MaterialExpressionMultiply_42"
   End Object
   Begin Object Name="MaterialExpressionMultiply_42"
      A=(Expression="/Script/Engine.MaterialExpressionFresnel'MaterialGraphNode_39.MaterialExpressionFresnel_39'")
      B=(Expression="/Script/Engine.MaterialExpressionScalarParameter'MaterialGraphNode_11.MaterialExpressionScalarParameter_11'")
      MaterialExpressionEditorX=1660
      MaterialExpressionEditorY=-300
      MaterialExpressionGuid=23F3119A41223E0B9F305439CB4C9E7E
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpression="/Script/Engine.MaterialExpressionMultiply'MaterialExpressionMultiply_42'"
   NodePosX=1660
   NodePosY=-300
   NodeGuid=66B1DDE52B70428883A36889054BEACE
   CustomProperties Pin (PinId=FA9691B6D286AA817FC9F6859B7895F9,PinName="A",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_39 1C6FDF1DCF03473B9B98D73978CFB031,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=212E67CB5C5D5A3C0CD8BA724B3F3B1F,PinName="B",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_11 2CB34552166BA7A79347CBA25ACFFFFD,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=BB658F50CF251951EC8C30EC7EFF22A0,PinName="Output",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_41 98AE4EF96BE984D469FC5F02DB0D9013,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_43"
   Begin Object Class=/Script/Engine.MaterialExpressionDistance Name="MaterialExpressionDistance_43"
   End Object
   Begin Object Name="MaterialExpressionDistance_43"
      A=(Expression="/Script/Engine.MaterialExpressionTextureCoordinate'MaterialGraphNode_27.MaterialExpressionTextureCoordinate_27'")
      B=(Expression="/Script/Engine.MaterialExpressionConstant2Vector'MaterialGraphNode_44.MaterialExpressionConstant2Vector_44'")
      MaterialExpressionEditorX=1200
      MaterialExpressionEditorY=40
      MaterialExpressionGuid=D0A941B5C21E96BD36FCC0D9FD364980
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
   End Object
   MaterialExpression="/Script/Engine.MaterialExpressionDistance'MaterialExpressionDistance_43'"
   NodePosX=1200
   NodePosY=40
   NodeGuid=48F58347ECD262169F3ABC356BAF1F9D
   CustomProperties Pin (PinId=A7849B2225AD011C88DCD530A596B008,PinName="A",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_27 ED19E145B01049371F3D16A0F738FB3D,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=78BB51011CE80B7F4BED7495C07BD2A3,PinName="B",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_44 0165860E6A73722314F05D5014BFF217,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
   CustomProperties Pin (PinId=D0E8D60E4187522DB165815FC59F4EB3,PinName="Output",Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_45 9AE7163A65E9DA2FAEE091A90E09787E,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False)
End Object

Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_44"
   Begin Object Class=/Script/Engine.MaterialExpressionConstant2Vector Name="MaterialExpressionConstant2Vector_44"
   End Object
   Begin Object Name="MaterialExpressionConstant2Vector_44"
      R=0.5
      G=0.5
      MaterialExpressionEditorX=1200
      MaterialExpressionEditorY=200
      MaterialExpressionGuid=7A5E93033FD7018FBB0BAF7C5EA4010B
      Material="/Script/UnrealEd.PreviewMaterial'/Engine/Transient.M_RefractiveLens'"
…

Source truncated for rendering. Use Copy to grab the full 129 KB.

Nodes: Comment (x15), ScalarParameter (x11), Multiply (x7), Add (x2), Constant2Vector (x2), CrossProduct (x2), Custom (x2), Normalize (x2), Saturate (x2), VectorParameter (x2), VertexNormalWS (x2), CameraVectorWS, Constant3Vector, Distance, Fresnel, Material, OneMinus, PixelNormalWS, StaticSwitchParameter, Subtract, TextureCoordinate, TextureSampleParameter2D

more from @hazesee all

Contact Mask

@hazeUE 5.6+

Iridescent Thin-Film

@hazeUE 5.7

Fabric Sheen

@hazeUE 5.7

More like this

Heat Haze

@hazeUE 5.6+

Rain On Lens

@hazeUE 5.6+
material of the week

Silhouette Parallax

@hazeUE 5.6+

Refractive Lens

@hazefounder
UE 5.6UE 5.7

0
license

CC0 1.0: Public Domain

Public domain: use it however you like, no credit required.

dependencies

Zero dependencies

Pastes and works in any UE 5.3+ project. No textures, no material functions, no MPCs.

ue compatibility
UE 5.3UE 5.4UE 5.5UE 5.6UE 5.7

Details

Last update
2 hours ago
Published
2 hours ago
Nodes
60