Procedural floor tile material

Hi

I’m trying to create a procedural floor tile, but I’m not usually very good at materials, so I wanted to get some feedback. In particular the bevel doesn’t seem to be working quite as well as I’d like. I used AI to guide me this far, but it seemed to stuggle a bit. Any advice would be great, thanks!

I have to go into work but I will try and reply later.

This kind of thing has always been an ‘interesting problem’ in that you can do so much with it. How much do you want this thing to do? How procedural is procedural; do you want to totally generate all the elements from math, or do you plan to use textures or other assets in the shader?

For example: using a texture-atlas you can use one texture to store multiple tile-images and then use different chunks/tiles scattered random ways such that a single shader/texture combo can create, large, varied and non-repeating patterns. You could do the same with some decorative elements like grime, mold, etc.. to scatter over the surface, then add something else like wetness effects, raindrops or whatever.

I would suggest you lean on at least a few texture-assets. With this kind of orderly-repeating type problem (vs organic stuff like dirt/landscapes), one might be able to use relatively-few/low-cost (they don’t need to be super-high-res).

I didn’t forget, but I had some stuff come up…uhll bee bach..

Hi @shawrie777 ,would it be possible to provide further information on how you would like the visuals to looks like. A simple draw over on top of your current image authored in your preferred image editing program would suffice. I’m trying to get a better idea on the angle of the bevel thickness/shape you are trying to achieve. (don’t worry the drawing doesn’t have to be pretty or if it’s easier a reference image would work as well)

It would also help to know on what version of Unreal Engine you are working on that way I’m able to replicate your steps on my end to give you a more bespoke answer. (In different version of the engine some nodes/options are changed here and there so I want to make sure to give you an answer that you can use with minimal risk factors of causing you further frustration)

Note:

If you want to add any additional info such as further attributes that you would like to have present in the material. For example, such as an option to control the intensity of the bevel in a material instance, please feel free to add it as well.

So this will be your basis. Copy/Paste the below into your material editor for your copy. It’s a basic atlas material with randomized cell-selection w/rotation, across worldspace.

Material nodes

Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name=“MaterialGraphNode_0” ExportPath=“/Script/UnrealEd.MaterialGraphNode’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_0’”
Begin Object Class=/Script/Engine.MaterialExpressionVectorNoise Name=“MaterialExpressionVectorNoise_0” ExportPath=“/Script/Engine.MaterialExpressionVectorNoise’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_0.MaterialExpressionVectorNoise_0’”
End Object
Begin Object Name=“MaterialExpressionVectorNoise_0” ExportPath=“/Script/Engine.MaterialExpressionVectorNoise’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_0.MaterialExpressionVectorNoise_0’”
Position=(Expression=“/Script/Engine.MaterialExpressionAppendVector’MaterialGraphNode_1.MaterialExpressionAppendVector_0’”)
MaterialExpressionEditorX=-1872
MaterialExpressionEditorY=368
MaterialExpressionGuid=E3ECC8214D46C6E3D0F4F985815DD434
Material=“/Script/UnrealEd.PreviewMaterial’/Engine/Transient.M_ProcFloor’”
Desc=“Gives random RGB value for each\r\nUV cell we defined with Scaling”
bCommentBubbleVisible=True
End Object
MaterialExpression=“/Script/Engine.MaterialExpressionVectorNoise’MaterialExpressionVectorNoise_0’”
NodePosX=-1872
NodePosY=368
AdvancedPinDisplay=Hidden
bCommentBubbleVisible=True
NodeComment=“Gives random RGB value for each\r\nUV cell we defined with Scaling”
NodeGuid=678564E945152D33827644A5B2E16B89
CustomProperties Pin (PinId=DC4E7EB54B3ED9BF8F3E139D01A562CD,PinName=“World Position”,PinType.PinCategory=“required”,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 03EA4EDD4AE14D2DBA7258B3309CF2D3,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=8F0B5CAF426710DCCDDADDB5F39E44AF,PinName=“Function”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“byte”,PinType.PinSubCategoryObject=“/Script/CoreUObject.Enum’/Script/Engine.EVectorNoiseFunction’”,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue=“Cellnoise”,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
CustomProperties Pin (PinId=5B2F1EDB42F6790B576FBAA76FC71070,PinName=“Quality”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“int”,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,DefaultValue=“1”,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=True,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
CustomProperties Pin (PinId=2AE780CB48BC0A294372F7AF14EBE9AB,PinName=“Tiling”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“bool”,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,DefaultValue=“false”,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
CustomProperties Pin (PinId=ACF447AB4C9AA80DAA4FFCA33122323C,PinName=“Tile Size”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“int”,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,DefaultValue=“300”,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=True,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
CustomProperties Pin (PinId=112353E54F549CE74F13B684387D07FB,PinName=“Output”,PinFriendlyName=NSLOCTEXT(“MaterialGraphNode”, “Space”, " “),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_3 60282B154F74CD6FD640CDA96D47C6E9,MaterialGraphNode_7 5945E22744770C3A80BBF5AC32C26966,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name=“MaterialGraphNode_1” ExportPath=”/Script/UnrealEd.MaterialGraphNode’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_1’"
Begin Object Class=/Script/Engine.MaterialExpressionAppendVector Name=“MaterialExpressionAppendVector_0” ExportPath=“/Script/Engine.MaterialExpressionAppendVector’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_1.MaterialExpressionAppendVector_0’”
End Object
Begin Object Name=“MaterialExpressionAppendVector_0” ExportPath=“/Script/Engine.MaterialExpressionAppendVector’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_1.MaterialExpressionAppendVector_0’”
A=(Expression=“/Script/Engine.MaterialExpressionTruncate’MaterialGraphNode_2.MaterialExpressionTruncate_0’”)
B=(Expression=“/Script/Engine.MaterialExpressionScalarParameter’MaterialGraphNode_29.MaterialExpressionScalarParameter_15’”)
MaterialExpressionEditorX=-2016
MaterialExpressionEditorY=384
MaterialExpressionGuid=4BDFDF67490FACFD24AFBDB212F6BF26
Material=“/Script/UnrealEd.PreviewMaterial’/Engine/Transient.M_ProcFloor’”
End Object
MaterialExpression=“/Script/Engine.MaterialExpressionAppendVector’MaterialExpressionAppendVector_0’”
NodePosX=-2016
NodePosY=384
NodeGuid=81A4229F40024C7583481B833CEBF90F
CustomProperties Pin (PinId=73009BC34F4D6059AFB4999AD6760F7C,PinName=“A”,PinType.PinCategory=“required”,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 8F0D3EB942E0EBAC1C3746BA51DC62F5,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=C48396D34947DFE56F08AEA722F1E205,PinName=“B”,PinType.PinCategory=“required”,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 B0D2C7A24E7AA60D686DCB8BACB4A057,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=03EA4EDD4AE14D2DBA7258B3309CF2D3,PinName=“Output”,PinFriendlyName=NSLOCTEXT(“MaterialGraphNode”, “Space”, " “),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_0 DC4E7EB54B3ED9BF8F3E139D01A562CD,),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” ExportPath=”/Script/UnrealEd.MaterialGraphNode’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_2’"
Begin Object Class=/Script/Engine.MaterialExpressionTruncate Name=“MaterialExpressionTruncate_0” ExportPath=“/Script/Engine.MaterialExpressionTruncate’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_2.MaterialExpressionTruncate_0’”
End Object
Begin Object Name=“MaterialExpressionTruncate_0” ExportPath=“/Script/Engine.MaterialExpressionTruncate’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_2.MaterialExpressionTruncate_0’”
Input=(Expression=“/Script/Engine.MaterialExpressionDivide’MaterialGraphNode_26.MaterialExpressionDivide_10’”)
MaterialExpressionEditorX=-2256
MaterialExpressionEditorY=384
MaterialExpressionGuid=DE2724FB4D60F63E3C29E980998E447C
Material=“/Script/UnrealEd.PreviewMaterial’/Engine/Transient.M_ProcFloor’”
End Object
MaterialExpression=“/Script/Engine.MaterialExpressionTruncate’MaterialExpressionTruncate_0’”
NodePosX=-2256
NodePosY=384
NodeGuid=064514904E76619BEDA7DEAD75F72D20
CustomProperties Pin (PinId=D3A4B7D740D3A70F7C18B693E71C6264,PinName=“Input”,PinFriendlyName=NSLOCTEXT(“MaterialGraphNode”, “Space”, " “),PinType.PinCategory=“required”,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_26 AB3E6CFD4253E7DF4566BA95E36BEDEC,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=8F0D3EB942E0EBAC1C3746BA51DC62F5,PinName=“Output”,PinFriendlyName=NSLOCTEXT(“MaterialGraphNode”, “Space”, " “),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_1 73009BC34F4D6059AFB4999AD6760F7C,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name=“MaterialGraphNode_3” ExportPath=“/Script/UnrealEd.MaterialGraphNode’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_3’”
Begin Object Class=/Script/Engine.MaterialExpressionComponentMask Name=“MaterialExpressionComponentMask_0” ExportPath=“/Script/Engine.MaterialExpressionComponentMask’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_3.MaterialExpressionComponentMask_0’”
End Object
Begin Object Name=“MaterialExpressionComponentMask_0” ExportPath=“/Script/Engine.MaterialExpressionComponentMask’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_3.MaterialExpressionComponentMask_0’”
Input=(Expression=“/Script/Engine.MaterialExpressionVectorNoise’MaterialGraphNode_0.MaterialExpressionVectorNoise_0’”)
R=True
MaterialExpressionEditorX=-1680
MaterialExpressionEditorY=672
MaterialExpressionGuid=837811A84A3FA55C709611B3F2A4986E
Material=“/Script/UnrealEd.PreviewMaterial’/Engine/Transient.M_ProcFloor’”
Desc=“Rotation value - in a range of 0->1”
bCommentBubbleVisible=True
End Object
MaterialExpression=“/Script/Engine.MaterialExpressionComponentMask’MaterialExpressionComponentMask_0’”
NodePosX=-1680
NodePosY=672
AdvancedPinDisplay=Hidden
bCommentBubbleVisible=True
NodeComment=“Rotation value - in a range of 0->1”
NodeGuid=7F8FF2FF4DA099777D0741A1D0F0507E
CustomProperties Pin (PinId=60282B154F74CD6FD640CDA96D47C6E9,PinName=“Input”,PinFriendlyName=NSLOCTEXT(“MaterialGraphNode”, “Space”, " “),PinType.PinCategory=“required”,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_0 112353E54F549CE74F13B684387D07FB,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=2B10031243B0C267A4329286F9C531F8,PinName=“R”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“bool”,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,DefaultValue=“true”,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
CustomProperties Pin (PinId=FA71B89F4285B134219FD793A6881F36,PinName=“G”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“bool”,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,DefaultValue=“false”,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
CustomProperties Pin (PinId=48A032214D0B4DDBA75BCC977E860942,PinName=“B”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“bool”,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,DefaultValue=“false”,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
CustomProperties Pin (PinId=F058CC254D1E859A2C623187EBCCBA33,PinName=“A”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“bool”,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,DefaultValue=“false”,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
CustomProperties Pin (PinId=7BA8380145D5EBDF7AEB449277170FAD,PinName=“Output”,PinFriendlyName=NSLOCTEXT(“MaterialGraphNode”, “Space”, " “),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_5 0B9F40934B959987AD279BA590111E7A,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name=“MaterialGraphNode_4” ExportPath=“/Script/UnrealEd.MaterialGraphNode’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_4’”
Begin Object Class=/Script/Engine.MaterialExpressionMultiply Name=“MaterialExpressionMultiply_1” ExportPath=“/Script/Engine.MaterialExpressionMultiply’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_4.MaterialExpressionMultiply_1’”
End Object
Begin Object Name=“MaterialExpressionMultiply_1” ExportPath=“/Script/Engine.MaterialExpressionMultiply’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_4.MaterialExpressionMultiply_1’”
A=(Expression=“/Script/Engine.MaterialExpressionFloor’MaterialGraphNode_6.MaterialExpressionFloor_0’”)
ConstB=6.283185
MaterialExpressionEditorX=-1280
MaterialExpressionEditorY=864
MaterialExpressionGuid=96D406EB4D5375657A95F4ACB1180EFA
Material=“/Script/UnrealEd.PreviewMaterial’/Engine/Transient.M_ProcFloor’”
Desc=“Multiply by 2Pi to convert to radians.\r\nThis allows us to use 0, 1, 2, 3 as cardinal rotation values.”
bCommentBubbleVisible=True
End Object
MaterialExpression=“/Script/Engine.MaterialExpressionMultiply’MaterialExpressionMultiply_1’”
NodePosX=-1280
NodePosY=864
bCommentBubbleVisible=True
NodeComment=“Multiply by 2Pi to convert to radians.\r\nThis allows us to use 0, 1, 2, 3 as cardinal rotation values.”
NodeGuid=FA6F698F45FEFFC01F3B01B38C2483DD
CustomProperties Pin (PinId=1FA9C8974E2985014218C4BC218A1332,PinName=“A”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“red”,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,DefaultValue=“0.0”,LinkedTo=(MaterialGraphNode_6 293360284CB0C29919C14598A963328A,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=2721F2D347AF0959E1CF7E86E1B446A7,PinName=“B”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“red”,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,DefaultValue=“6.283185”,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=0666C79F4BDD297485996683C5423BA2,PinName=“Output”,PinFriendlyName=NSLOCTEXT(“MaterialGraphNode”, “Space”, " “),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_12 28707295461D680F5D81AF9C2D9D0613,),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” ExportPath=”/Script/UnrealEd.MaterialGraphNode’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_5’"
Begin Object Class=/Script/Engine.MaterialExpressionMultiply Name=“MaterialExpressionMultiply_2” ExportPath=“/Script/Engine.MaterialExpressionMultiply’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_5.MaterialExpressionMultiply_2’”
End Object
Begin Object Name=“MaterialExpressionMultiply_2” ExportPath=“/Script/Engine.MaterialExpressionMultiply’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_5.MaterialExpressionMultiply_2’”
A=(Expression=“/Script/Engine.MaterialExpressionComponentMask’MaterialGraphNode_3.MaterialExpressionComponentMask_0’”)
ConstB=4.000000
MaterialExpressionEditorX=-1536
MaterialExpressionEditorY=736
MaterialExpressionGuid=E919098F46A9237A51797F98265C5007
Material=“/Script/UnrealEd.PreviewMaterial’/Engine/Transient.M_ProcFloor’”
Desc=“4 possible rotations/steps: 0, 90, 180, 270.\r\nExpand the range 0->1 to 0->4”
bCommentBubbleVisible=True
End Object
MaterialExpression=“/Script/Engine.MaterialExpressionMultiply’MaterialExpressionMultiply_2’”
NodePosX=-1536
NodePosY=736
bCommentBubbleVisible=True
NodeComment=“4 possible rotations/steps: 0, 90, 180, 270.\r\nExpand the range 0->1 to 0->4”
NodeGuid=35C0988B46C0267789B13FB6493FF7B9
CustomProperties Pin (PinId=0B9F40934B959987AD279BA590111E7A,PinName=“A”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“red”,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,DefaultValue=“0.0”,LinkedTo=(MaterialGraphNode_3 7BA8380145D5EBDF7AEB449277170FAD,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=03638A544D6C83C823A10BA0E8E354D9,PinName=“B”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“red”,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,DefaultValue=“4.0”,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=BF15DF124CE4E2616FA6C7BB20714940,PinName=“Output”,PinFriendlyName=NSLOCTEXT(“MaterialGraphNode”, “Space”, " “),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_6 C44946D9479B47AA9C2F7F8D1EABC67E,),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” ExportPath=”/Script/UnrealEd.MaterialGraphNode’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_6’"
Begin Object Class=/Script/Engine.MaterialExpressionFloor Name=“MaterialExpressionFloor_0” ExportPath=“/Script/Engine.MaterialExpressionFloor’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_6.MaterialExpressionFloor_0’”
End Object
Begin Object Name=“MaterialExpressionFloor_0” ExportPath=“/Script/Engine.MaterialExpressionFloor’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_6.MaterialExpressionFloor_0’”
Input=(Expression=“/Script/Engine.MaterialExpressionMultiply’MaterialGraphNode_5.MaterialExpressionMultiply_2’”)
MaterialExpressionEditorX=-1392
MaterialExpressionEditorY=800
MaterialExpressionGuid=3FC8003E4A75211BFDA43BACDC80573E
Material=“/Script/UnrealEd.PreviewMaterial’/Engine/Transient.M_ProcFloor’”
Desc=“Round down so we get discreet \r\nvalues/steps: 0, 1, 2, 3”
bCommentBubbleVisible=True
End Object
MaterialExpression=“/Script/Engine.MaterialExpressionFloor’MaterialExpressionFloor_0’”
NodePosX=-1392
NodePosY=800
bCommentBubbleVisible=True
NodeComment=“Round down so we get discreet \r\nvalues/steps: 0, 1, 2, 3”
NodeGuid=BE316D1349AF464918C5599D12B247CE
CustomProperties Pin (PinId=C44946D9479B47AA9C2F7F8D1EABC67E,PinName=“Input”,PinFriendlyName=NSLOCTEXT(“MaterialGraphNode”, “Space”, " “),PinType.PinCategory=“required”,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 BF15DF124CE4E2616FA6C7BB20714940,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=293360284CB0C29919C14598A963328A,PinName=“Output”,PinFriendlyName=NSLOCTEXT(“MaterialGraphNode”, “Space”, " “),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_4 1FA9C8974E2985014218C4BC218A1332,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name=“MaterialGraphNode_7” ExportPath=“/Script/UnrealEd.MaterialGraphNode’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_7’”
Begin Object Class=/Script/Engine.MaterialExpressionComponentMask Name=“MaterialExpressionComponentMask_2” ExportPath=“/Script/Engine.MaterialExpressionComponentMask’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_7.MaterialExpressionComponentMask_2’”
End Object
Begin Object Name=“MaterialExpressionComponentMask_2” ExportPath=“/Script/Engine.MaterialExpressionComponentMask’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_7.MaterialExpressionComponentMask_2’”
Input=(Expression=“/Script/Engine.MaterialExpressionVectorNoise’MaterialGraphNode_0.MaterialExpressionVectorNoise_0’”)
G=True
MaterialExpressionEditorX=-1696
MaterialExpressionEditorY=416
MaterialExpressionGuid=360C00B44D185107493B7B9698B7AF5B
Material=“/Script/UnrealEd.PreviewMaterial’/Engine/Transient.M_ProcFloor’”
Desc=“Atlas/Cell value - in a range of 0->1”
bCommentBubbleVisible=True
End Object
MaterialExpression=“/Script/Engine.MaterialExpressionComponentMask’MaterialExpressionComponentMask_2’”
NodePosX=-1696
NodePosY=416
AdvancedPinDisplay=Hidden
bCommentBubbleVisible=True
NodeComment=“Atlas/Cell value - in a range of 0->1”
NodeGuid=8F6040F84FB28367462C6D81522D0BB9
CustomProperties Pin (PinId=5945E22744770C3A80BBF5AC32C26966,PinName=“Input”,PinFriendlyName=NSLOCTEXT(“MaterialGraphNode”, “Space”, " “),PinType.PinCategory=“required”,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_0 112353E54F549CE74F13B684387D07FB,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=8744CE5B4EF73AA898C72984F6F5A585,PinName=“R”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“bool”,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,DefaultValue=“false”,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
CustomProperties Pin (PinId=B1F07D5F44B1A5152D475F941A3C172C,PinName=“G”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“bool”,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,DefaultValue=“true”,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
CustomProperties Pin (PinId=7EEEA582439E593983C2A0A2F504FF07,PinName=“B”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“bool”,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,DefaultValue=“false”,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
CustomProperties Pin (PinId=C33B39364BCB50D5112BE0BB3BF49631,PinName=“A”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“bool”,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,DefaultValue=“false”,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
CustomProperties Pin (PinId=C7591C844D08F25602BE2F90C0E35F64,PinName=“Output”,PinFriendlyName=NSLOCTEXT(“MaterialGraphNode”, “Space”, " “),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_8 53565F844124498EED1700A63765E507,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name=“MaterialGraphNode_8” ExportPath=“/Script/UnrealEd.MaterialGraphNode’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_8’”
Begin Object Class=/Script/Engine.MaterialExpressionMultiply Name=“MaterialExpressionMultiply_5” ExportPath=“/Script/Engine.MaterialExpressionMultiply’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_8.MaterialExpressionMultiply_5’”
End Object
Begin Object Name=“MaterialExpressionMultiply_5” ExportPath=“/Script/Engine.MaterialExpressionMultiply’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_8.MaterialExpressionMultiply_5’”
A=(Expression=“/Script/Engine.MaterialExpressionComponentMask’MaterialGraphNode_7.MaterialExpressionComponentMask_2’”)
ConstB=16.000000
MaterialExpressionEditorX=-1552
MaterialExpressionEditorY=464
MaterialExpressionGuid=2DD06BCF4071DF22FF003DBADD4FF4FC
Material=“/Script/UnrealEd.PreviewMaterial’/Engine/Transient.M_ProcFloor’”
Desc=“We need 16 possible offsets.”
bCommentBubbleVisible=True
End Object
MaterialExpression=“/Script/Engine.MaterialExpressionMultiply’MaterialExpressionMultiply_5’”
NodePosX=-1552
NodePosY=464
bCommentBubbleVisible=True
NodeComment=“We need 16 possible offsets.”
NodeGuid=A48CE36049F8869BEEDC7385721F34FB
CustomProperties Pin (PinId=53565F844124498EED1700A63765E507,PinName=“A”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“red”,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,DefaultValue=“0.0”,LinkedTo=(MaterialGraphNode_7 C7591C844D08F25602BE2F90C0E35F64,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=2808047B4FA58980FD29C4B2CFEE28E9,PinName=“B”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“red”,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,DefaultValue=“16.0”,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=2F165618431A571E53C7A59A1F91F9FB,PinName=“Output”,PinFriendlyName=NSLOCTEXT(“MaterialGraphNode”, “Space”, " “),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_9 769AE6FD4613EEDDA9B5E5BE83E36550,),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” ExportPath=”/Script/UnrealEd.MaterialGraphNode’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_9’"
Begin Object Class=/Script/Engine.MaterialExpressionFloor Name=“MaterialExpressionFloor_1” ExportPath=“/Script/Engine.MaterialExpressionFloor’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_9.MaterialExpressionFloor_1’”
End Object
Begin Object Name=“MaterialExpressionFloor_1” ExportPath=“/Script/Engine.MaterialExpressionFloor’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_9.MaterialExpressionFloor_1’”
Input=(Expression=“/Script/Engine.MaterialExpressionMultiply’MaterialGraphNode_8.MaterialExpressionMultiply_5’”)
MaterialExpressionEditorX=-1408
MaterialExpressionEditorY=528
MaterialExpressionGuid=A6D6B5EB4B74B61C58D31D90AB7D8968
Material=“/Script/UnrealEd.PreviewMaterial’/Engine/Transient.M_ProcFloor’”
Desc=“Atlas/Cell value - in a range \r\nof 0->15, in whole integers.”
bCommentBubbleVisible=True
End Object
MaterialExpression=“/Script/Engine.MaterialExpressionFloor’MaterialExpressionFloor_1’”
NodePosX=-1408
NodePosY=528
bCommentBubbleVisible=True
NodeComment=“Atlas/Cell value - in a range \r\nof 0->15, in whole integers.”
NodeGuid=D735F9874F98ABE1401036B7153A48CF
CustomProperties Pin (PinId=769AE6FD4613EEDDA9B5E5BE83E36550,PinName=“Input”,PinFriendlyName=NSLOCTEXT(“MaterialGraphNode”, “Space”, " “),PinType.PinCategory=“required”,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 2F165618431A571E53C7A59A1F91F9FB,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=570DFB20447D3FC3A338B4A7E4E0F7AD,PinName=“Output”,PinFriendlyName=NSLOCTEXT(“MaterialGraphNode”, “Space”, " “),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_11 E8AC4B6449848FF4E5394E90A17E721B,),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” ExportPath=“/Script/UnrealEd.MaterialGraphNode’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_11’”
Begin Object Class=/Script/Engine.MaterialExpressionNamedRerouteDeclaration Name=“MaterialExpressionNamedRerouteDeclaration_0” ExportPath=“/Script/Engine.MaterialExpressionNamedRerouteDeclaration’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_11.MaterialExpressionNamedRerouteDeclaration_0’”
End Object
Begin Object Name=“MaterialExpressionNamedRerouteDeclaration_0” ExportPath=“/Script/Engine.MaterialExpressionNamedRerouteDeclaration’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_11.MaterialExpressionNamedRerouteDeclaration_0’”
Input=(Expression=“/Script/Engine.MaterialExpressionFloor’MaterialGraphNode_9.MaterialExpressionFloor_1’”)
Name=“Random_Cell”
NodeColor=(R=0.000000,G=1.000000,B=0.648438,A=1.000000)
VariableGuid=47866DC44E9F11E0A6CF95BB055779D5
MaterialExpressionEditorX=-1280
MaterialExpressionEditorY=528
MaterialExpressionGuid=61388FF848D537B043B6C4AF943F26DE
Material=“/Script/UnrealEd.PreviewMaterial’/Engine/Transient.M_ProcFloor’”
End Object
MaterialExpression=“/Script/Engine.MaterialExpressionNamedRerouteDeclaration’MaterialExpressionNamedRerouteDeclaration_0’”
NodePosX=-1280
NodePosY=528
bCanRenameNode=True
NodeGuid=D08ABE3E4C97549285D1BB811EF2ED33
CustomProperties Pin (PinId=E8AC4B6449848FF4E5394E90A17E721B,PinName=“Input”,PinFriendlyName=NSLOCTEXT(“MaterialGraphNode”, “Space”, " “),PinType.PinCategory=“required”,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 570DFB20447D3FC3A338B4A7E4E0F7AD,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=9BD910204E6305B5CF41D5924141B272,PinName=“Output”,PinFriendlyName=NSLOCTEXT(“MaterialGraphNode”, “Space”, " “),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_12” ExportPath=“/Script/UnrealEd.MaterialGraphNode’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_12’”
Begin Object Class=/Script/Engine.MaterialExpressionNamedRerouteDeclaration Name=“MaterialExpressionNamedRerouteDeclaration_1” ExportPath=“/Script/Engine.MaterialExpressionNamedRerouteDeclaration’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_12.MaterialExpressionNamedRerouteDeclaration_1’”
End Object
Begin Object Name=“MaterialExpressionNamedRerouteDeclaration_1” ExportPath=“/Script/Engine.MaterialExpressionNamedRerouteDeclaration’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_12.MaterialExpressionNamedRerouteDeclaration_1’”
Input=(Expression=“/Script/Engine.MaterialExpressionMultiply’MaterialGraphNode_4.MaterialExpressionMultiply_1’”)
Name=“Random_Rotation”
NodeColor=(R=1.000000,G=0.328125,B=0.000000,A=1.000000)
VariableGuid=22C025F943F68019F363D9B8640B0334
MaterialExpressionEditorX=-1024
MaterialExpressionEditorY=864
MaterialExpressionGuid=EE8AEA344EDC3450F6788BA7AFF5B8A0
Material=“/Script/UnrealEd.PreviewMaterial’/Engine/Transient.M_ProcFloor’”
End Object
MaterialExpression=“/Script/Engine.MaterialExpressionNamedRerouteDeclaration’MaterialExpressionNamedRerouteDeclaration_1’”
NodePosX=-1024
NodePosY=864
bCanRenameNode=True
NodeGuid=E31B79AE4664C8717C4649A935D09A49
CustomProperties Pin (PinId=28707295461D680F5D81AF9C2D9D0613,PinName=“Input”,PinFriendlyName=NSLOCTEXT(“MaterialGraphNode”, “Space”, " “),PinType.PinCategory=“required”,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 0666C79F4BDD297485996683C5423BA2,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=EE117F1B4FAE0ED88BCD90A9D1D9CE89,PinName=“Output”,PinFriendlyName=NSLOCTEXT(“MaterialGraphNode”, “Space”, " “),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_13” ExportPath=“/Script/UnrealEd.MaterialGraphNode’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_13’”
Begin Object Class=/Script/Engine.MaterialExpressionDivide Name=“MaterialExpressionDivide_7” ExportPath=“/Script/Engine.MaterialExpressionDivide’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_13.MaterialExpressionDivide_7’”
End Object
Begin Object Name=“MaterialExpressionDivide_7” ExportPath=“/Script/Engine.MaterialExpressionDivide’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_13.MaterialExpressionDivide_7’”
A=(Expression=“/Script/Engine.MaterialExpressionDivide’MaterialGraphNode_26.MaterialExpressionDivide_10’”)
B=(Expression=“/Script/Engine.MaterialExpressionConvert’MaterialGraphNode_28.MaterialExpressionConvert_3’”)
MaterialExpressionEditorX=-2048
MaterialExpressionEditorY=1008
MaterialExpressionGuid=23FA3C8A4F52694B230B27A2C5E04788
Material=“/Script/UnrealEd.PreviewMaterial’/Engine/Transient.M_ProcFloor’”
End Object
MaterialExpression=“/Script/Engine.MaterialExpressionDivide’MaterialExpressionDivide_7’”
NodePosX=-2048
NodePosY=1008
NodeGuid=343AC05247D9E8CEECE085A525767CDA
CustomProperties Pin (PinId=6221C4054D8AB9102868B6B02E8F1FC0,PinName=“A”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“red”,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,DefaultValue=“1.0”,LinkedTo=(MaterialGraphNode_26 AB3E6CFD4253E7DF4566BA95E36BEDEC,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=75454A2E439AF9F1BB9175AFB1E5E404,PinName=“B”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“red”,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,DefaultValue=“2.0”,LinkedTo=(MaterialGraphNode_28 85B3119F48A0B0F51335B38B73F40ED6,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=802F555A47F9DA830AB605B3A96C558F,PinName=“Output”,PinFriendlyName=NSLOCTEXT(“MaterialGraphNode”, “Space”, " “),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 98786AAD40359878BBA0F28141423F8B,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name=“MaterialGraphNode_14” ExportPath=”/Script/UnrealEd.MaterialGraphNode’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_14’"
Begin Object Class=/Script/Engine.MaterialExpressionAdd Name=“MaterialExpressionAdd_1” ExportPath=“/Script/Engine.MaterialExpressionAdd’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_14.MaterialExpressionAdd_1’”
End Object
Begin Object Name=“MaterialExpressionAdd_1” ExportPath=“/Script/Engine.MaterialExpressionAdd’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_14.MaterialExpressionAdd_1’”
A=(Expression=“/Script/Engine.MaterialExpressionDivide’MaterialGraphNode_13.MaterialExpressionDivide_7’”)
B=(Expression=“/Script/Engine.MaterialExpressionAppendVector’MaterialGraphNode_15.MaterialExpressionAppendVector_2’”)
MaterialExpressionEditorX=-1840
MaterialExpressionEditorY=1008
MaterialExpressionGuid=361754644DB893BB00BABB99401CD33F
Material=“/Script/UnrealEd.PreviewMaterial’/Engine/Transient.M_ProcFloor’”
Desc=“Translation - Pick random cell”
bCommentBubbleVisible=True
End Object
MaterialExpression=“/Script/Engine.MaterialExpressionAdd’MaterialExpressionAdd_1’”
NodePosX=-1840
NodePosY=1008
bCommentBubbleVisible=True
NodeComment=“Translation - Pick random cell”
NodeGuid=7F71619749808B32B9F3C7A3955D8CC6
CustomProperties Pin (PinId=98786AAD40359878BBA0F28141423F8B,PinName=“A”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“red”,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,DefaultValue=“0.0”,LinkedTo=(MaterialGraphNode_13 802F555A47F9DA830AB605B3A96C558F,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=F3910A3F4BCA6A27DEB8EEAC77B65D6F,PinName=“B”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“red”,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,DefaultValue=“1.0”,LinkedTo=(MaterialGraphNode_15 EE8269AB4CBB96B484314DA14A0F2815,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=BB12C5F14F0EB0813A6ABA82CC81AA4A,PinName=“Output”,PinFriendlyName=NSLOCTEXT(“MaterialGraphNode”, “Space”, " “),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 08A5E8B14EDEB1859B53E6A7241A6E8A,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name=“MaterialGraphNode_15” ExportPath=”/Script/UnrealEd.MaterialGraphNode’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_15’"
Begin Object Class=/Script/Engine.MaterialExpressionAppendVector Name=“MaterialExpressionAppendVector_2” ExportPath=“/Script/Engine.MaterialExpressionAppendVector’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_15.MaterialExpressionAppendVector_2’”
End Object
Begin Object Name=“MaterialExpressionAppendVector_2” ExportPath=“/Script/Engine.MaterialExpressionAppendVector’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_15.MaterialExpressionAppendVector_2’”
A=(Expression=“/Script/Engine.MaterialExpressionDivide’MaterialGraphNode_17.MaterialExpressionDivide_9’”)
B=(Expression=“/Script/Engine.MaterialExpressionDivide’MaterialGraphNode_16.MaterialExpressionDivide_8’”)
MaterialExpressionEditorX=-1984
MaterialExpressionEditorY=1216
MaterialExpressionGuid=1CB6250349F320E86450D180C5DB1EE8
Material=“/Script/UnrealEd.PreviewMaterial’/Engine/Transient.M_ProcFloor’”
End Object
MaterialExpression=“/Script/Engine.MaterialExpressionAppendVector’MaterialExpressionAppendVector_2’”
NodePosX=-1984
NodePosY=1216
NodeGuid=2FC0A5934619DDF38029E4B3BDEFF888
CustomProperties Pin (PinId=E7CBB07F4F5129CA25E69F91756B87DE,PinName=“A”,PinType.PinCategory=“required”,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 7A441E5C40D52CDADD4A8EB62B4685C7,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=554C977F446AAC8B0FA78ABFD40173FE,PinName=“B”,PinType.PinCategory=“required”,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 E5FC03024993B844014AE4B96AFDE8C5,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=EE8269AB4CBB96B484314DA14A0F2815,PinName=“Output”,PinFriendlyName=NSLOCTEXT(“MaterialGraphNode”, “Space”, " “),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 F3910A3F4BCA6A27DEB8EEAC77B65D6F,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name=“MaterialGraphNode_16” ExportPath=”/Script/UnrealEd.MaterialGraphNode’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_16’"
Begin Object Class=/Script/Engine.MaterialExpressionDivide Name=“MaterialExpressionDivide_8” ExportPath=“/Script/Engine.MaterialExpressionDivide’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_16.MaterialExpressionDivide_8’”
End Object
Begin Object Name=“MaterialExpressionDivide_8” ExportPath=“/Script/Engine.MaterialExpressionDivide’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_16.MaterialExpressionDivide_8’”
A=(Expression=“/Script/Engine.MaterialExpressionFloor’MaterialGraphNode_18.MaterialExpressionFloor_2’”)
B=(Expression=“/Script/Engine.MaterialExpressionScalarParameter’MaterialGraphNode_20.MaterialExpressionScalarParameter_11’”)
ConstB=4.000000
MaterialExpressionEditorX=-2160
MaterialExpressionEditorY=1392
MaterialExpressionGuid=8F896B13423DA86C76C4A3AC89F445D2
Material=“/Script/UnrealEd.PreviewMaterial’/Engine/Transient.M_ProcFloor’”
End Object
MaterialExpression=“/Script/Engine.MaterialExpressionDivide’MaterialExpressionDivide_8’”
NodePosX=-2160
NodePosY=1392
NodeGuid=5A1CF2C44AEEDCDB1E4B3AB82C84AC76
CustomProperties Pin (PinId=23F4B0EB46E61AADE134AEB63A31055B,PinName=“A”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“red”,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,DefaultValue=“1.0”,LinkedTo=(MaterialGraphNode_18 24FA71F64D5C67FA8CA358A2DF2CBCC9,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=C9CC666947F63B7351015783664F5816,PinName=“B”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“red”,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,DefaultValue=“4.0”,LinkedTo=(MaterialGraphNode_20 05309F7E4109D0C821942992919D3599,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=E5FC03024993B844014AE4B96AFDE8C5,PinName=“Output”,PinFriendlyName=NSLOCTEXT(“MaterialGraphNode”, “Space”, " “),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_15 554C977F446AAC8B0FA78ABFD40173FE,),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” ExportPath=”/Script/UnrealEd.MaterialGraphNode’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_17’"
Begin Object Class=/Script/Engine.MaterialExpressionDivide Name=“MaterialExpressionDivide_9” ExportPath=“/Script/Engine.MaterialExpressionDivide’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_17.MaterialExpressionDivide_9’”
End Object
Begin Object Name=“MaterialExpressionDivide_9” ExportPath=“/Script/Engine.MaterialExpressionDivide’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_17.MaterialExpressionDivide_9’”
A=(Expression=“/Script/Engine.MaterialExpressionNamedRerouteUsage’MaterialGraphNode_21.MaterialExpressionNamedRerouteUsage_3’”)
B=(Expression=“/Script/Engine.MaterialExpressionScalarParameter’MaterialGraphNode_19.MaterialExpressionScalarParameter_10’”)
ConstB=4.000000
MaterialExpressionEditorX=-2480
MaterialExpressionEditorY=1216
MaterialExpressionGuid=DCBD88CD417E83EADAEDAB9B5963BF37
Material=“/Script/UnrealEd.PreviewMaterial’/Engine/Transient.M_ProcFloor’”
End Object
MaterialExpression=“/Script/Engine.MaterialExpressionDivide’MaterialExpressionDivide_9’”
NodePosX=-2480
NodePosY=1216
NodeGuid=7F3E78534C59293D2BC85B8ECACF1524
CustomProperties Pin (PinId=98BEEAED4CDCDDA19B412FBCB177F572,PinName=“A”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“red”,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,DefaultValue=“1.0”,LinkedTo=(MaterialGraphNode_21 F589CAA34C9CB326C4A781A9EE8A5B3C,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=C9B9C22D4C49E54A837827B767389136,PinName=“B”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“red”,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,DefaultValue=“4.0”,LinkedTo=(MaterialGraphNode_19 254154F34F59A1005106E9A0ADA69E4F,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=7A441E5C40D52CDADD4A8EB62B4685C7,PinName=“Output”,PinFriendlyName=NSLOCTEXT(“MaterialGraphNode”, “Space”, " “),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_15 E7CBB07F4F5129CA25E69F91756B87DE,MaterialGraphNode_18 29C02FC143D3FFA915522AAAA0E8B7CB,),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” ExportPath=”/Script/UnrealEd.MaterialGraphNode’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_18’"
Begin Object Class=/Script/Engine.MaterialExpressionFloor Name=“MaterialExpressionFloor_2” ExportPath=“/Script/Engine.MaterialExpressionFloor’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_18.MaterialExpressionFloor_2’”
End Object
Begin Object Name=“MaterialExpressionFloor_2” ExportPath=“/Script/Engine.MaterialExpressionFloor’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_18.MaterialExpressionFloor_2’”
Input=(Expression=“/Script/Engine.MaterialExpressionDivide’MaterialGraphNode_17.MaterialExpressionDivide_9’”)
MaterialExpressionEditorX=-2288
MaterialExpressionEditorY=1392
MaterialExpressionGuid=EFF550254D682F733239F785C0B156CF
Material=“/Script/UnrealEd.PreviewMaterial’/Engine/Transient.M_ProcFloor’”
End Object
MaterialExpression=“/Script/Engine.MaterialExpressionFloor’MaterialExpressionFloor_2’”
NodePosX=-2288
NodePosY=1392
NodeGuid=DDCB77F149459F7E52BDE39FFB60737F
CustomProperties Pin (PinId=29C02FC143D3FFA915522AAAA0E8B7CB,PinName=“Input”,PinFriendlyName=NSLOCTEXT(“MaterialGraphNode”, “Space”, " “),PinType.PinCategory=“required”,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 7A441E5C40D52CDADD4A8EB62B4685C7,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=24FA71F64D5C67FA8CA358A2DF2CBCC9,PinName=“Output”,PinFriendlyName=NSLOCTEXT(“MaterialGraphNode”, “Space”, " “),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_16 23F4B0EB46E61AADE134AEB63A31055B,),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” ExportPath=“/Script/UnrealEd.MaterialGraphNode’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_19’”
Begin Object Class=/Script/Engine.MaterialExpressionScalarParameter Name=“MaterialExpressionScalarParameter_10” ExportPath=“/Script/Engine.MaterialExpressionScalarParameter’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_19.MaterialExpressionScalarParameter_10’”
End Object
Begin Object Name=“MaterialExpressionScalarParameter_10” ExportPath=“/Script/Engine.MaterialExpressionScalarParameter’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_19.MaterialExpressionScalarParameter_10’”
DefaultValue=4.000000
ParameterName=“Rows”
ExpressionGUID=D59AA6A844F15BC562E156BDB2456D23
MaterialExpressionEditorX=-2688
MaterialExpressionEditorY=1296
MaterialExpressionGuid=1276ED424302BE3B5771B6BA123C4E63
Material=“/Script/UnrealEd.PreviewMaterial’/Engine/Transient.M_ProcFloor’”
End Object
MaterialExpression=“/Script/Engine.MaterialExpressionScalarParameter’MaterialExpressionScalarParameter_10’”
NodePosX=-2688
NodePosY=1296
bCanRenameNode=True
NodeGuid=3C5CDD984B2F9720281C9E8BBBB1BD2B
CustomProperties Pin (PinId=A861B53C46925333A2EB8A81573A9719,PinName=“Default Value”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“red”,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,DefaultValue=“4.0”,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=254154F34F59A1005106E9A0ADA69E4F,PinName=“Output”,PinFriendlyName=NSLOCTEXT(“MaterialGraphNode”, “Space”, " “),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_17 C9B9C22D4C49E54A837827B767389136,),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” ExportPath=”/Script/UnrealEd.MaterialGraphNode’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_20’"
Begin Object Class=/Script/Engine.MaterialExpressionScalarParameter Name=“MaterialExpressionScalarParameter_11” ExportPath=“/Script/Engine.MaterialExpressionScalarParameter’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_20.MaterialExpressionScalarParameter_11’”
End Object
Begin Object Name=“MaterialExpressionScalarParameter_11” ExportPath=“/Script/Engine.MaterialExpressionScalarParameter’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_20.MaterialExpressionScalarParameter_11’”
DefaultValue=4.000000
ParameterName=“Columns”
ExpressionGUID=AA0B77274FF71CEC9DE4EBA7AC390FBB
MaterialExpressionEditorX=-2688
MaterialExpressionEditorY=1408
MaterialExpressionGuid=2BA03D9442ECDC48D52B2ABEE2944085
Material=“/Script/UnrealEd.PreviewMaterial’/Engine/Transient.M_ProcFloor’”
End Object
MaterialExpression=“/Script/Engine.MaterialExpressionScalarParameter’MaterialExpressionScalarParameter_11’”
NodePosX=-2688
NodePosY=1408
bCanRenameNode=True
NodeGuid=1A132A364E4214D5F76C34AD4408DD90
CustomProperties Pin (PinId=8395C3F7474E7F31EC61AA91F58A5A94,PinName=“Default Value”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“red”,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,DefaultValue=“4.0”,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=05309F7E4109D0C821942992919D3599,PinName=“Output”,PinFriendlyName=NSLOCTEXT(“MaterialGraphNode”, “Space”, " “),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_16 C9CC666947F63B7351015783664F5816,),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” ExportPath=”/Script/UnrealEd.MaterialGraphNode’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_21’"
Begin Object Class=/Script/Engine.MaterialExpressionNamedRerouteUsage Name=“MaterialExpressionNamedRerouteUsage_3” ExportPath=“/Script/Engine.MaterialExpressionNamedRerouteUsage’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_21.MaterialExpressionNamedRerouteUsage_3’”
End Object
Begin Object Name=“MaterialExpressionNamedRerouteUsage_3” ExportPath=“/Script/Engine.MaterialExpressionNamedRerouteUsage’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_21.MaterialExpressionNamedRerouteUsage_3’”
Declaration=“/Script/Engine.MaterialExpressionNamedRerouteDeclaration’MaterialGraphNode_11.MaterialExpressionNamedRerouteDeclaration_0’”
DeclarationGuid=47866DC44E9F11E0A6CF95BB055779D5
MaterialExpressionEditorX=-2688
MaterialExpressionEditorY=1216
MaterialExpressionGuid=012C13944B1D94C875A6718F560DEB1E
Material=“/Script/UnrealEd.PreviewMaterial’/Engine/Transient.M_ProcFloor’”
End Object
MaterialExpression=“/Script/Engine.MaterialExpressionNamedRerouteUsage’MaterialExpressionNamedRerouteUsage_3’”
NodePosX=-2688
NodePosY=1216
NodeGuid=93891E914C61866E33C3E8AC6867979F
CustomProperties Pin (PinId=F589CAA34C9CB326C4A781A9EE8A5B3C,PinName=“Output”,PinFriendlyName=NSLOCTEXT(“MaterialGraphNode”, “Space”, " “),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_17 98BEEAED4CDCDDA19B412FBCB177F572,),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” ExportPath=”/Script/UnrealEd.MaterialGraphNode’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_22’"
Begin Object Class=/Script/Engine.MaterialExpressionTextureSample Name=“MaterialExpressionTextureSample_2” ExportPath=“/Script/Engine.MaterialExpressionTextureSample’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_22.MaterialExpressionTextureSample_2’”
End Object
Begin Object Name=“MaterialExpressionTextureSample_2” ExportPath=“/Script/Engine.MaterialExpressionTextureSample’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_22.MaterialExpressionTextureSample_2’”
Coordinates=(Expression=“/Script/Engine.MaterialExpressionRotator’MaterialGraphNode_30.MaterialExpressionRotator_1’”)
SamplerSource=SSM_Wrap_WorldGroupSettings
Texture=“/Script/Engine.Texture2D’/Game/ThirdPersonBP/Textures/SOA_endless_dummy.SOA_endless_dummy’”
MaterialExpressionEditorX=-1024
MaterialExpressionEditorY=1008
MaterialExpressionGuid=72D7DB284D516832F81234A9A8DD4D31
Material=“/Script/UnrealEd.PreviewMaterial’/Engine/Transient.M_ProcFloor’”
End Object
MaterialExpression=“/Script/Engine.MaterialExpressionTextureSample’MaterialExpressionTextureSample_2’”
NodePosX=-1024
NodePosY=1008
AdvancedPinDisplay=Hidden
ErrorType=1
ErrorMsg=“Missing DDX(UVs) parameter”
NodeGuid=6E7089AC4DC86833B9BA21A7F5C0611C
CustomProperties Pin (PinId=9B8373F94CD4167D474D27B5F3EA1867,PinName=“UVs”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“byte”,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,DefaultValue=“0”,LinkedTo=(MaterialGraphNode_30 EDE9A18C475A06E3BF90DEA2FD8B1CBC,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=C4250F364B69F577B7F51DBC84AEBB3D,PinName=“Tex”,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=740E87D344CB94E71E65318B98A0FA4A,PinName=“Apply View MipBias”,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=9F3A793C4C3879E17F755D8E5D78AD78,PinName=“MipValueMode”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“byte”,PinType.PinSubCategoryObject=“/Script/CoreUObject.Enum’/Script/Engine.ETextureMipValueMode’”,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue=“None (use computed mip level)”,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
CustomProperties Pin (PinId=B3D689FD4C28863FA796FDA466700A29,PinName=“Sampler Source”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“byte”,PinType.PinSubCategoryObject=“/Script/CoreUObject.Enum’/Script/Engine.ESamplerSourceMode’”,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue=“Shared: Wrap”,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
CustomProperties Pin (PinId=1ED27F3544F34989D64881903C3031F8,PinName=“Sampler Type”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“byte”,PinType.PinSubCategoryObject=“/Script/CoreUObject.Enum’/Script/Engine.EMaterialSamplerType’”,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue=“Color”,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
CustomProperties Pin (PinId=69D4D61B4EB6F3A5AA46F98DF648CE5D,PinName=“RGB”,Direction=“EGPD_Output”,PinType.PinCategory=“mask”,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_Root_0 E5CE0CC44AD41887253D04AAA2F88BF7,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=F23C23014EF7E5672ADF62B60ECE667D,PinName=“R”,Direction=“EGPD_Output”,PinType.PinCategory=“mask”,PinType.PinSubCategory=“red”,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=BFC223D240992A64C164CB8D050E845D,PinName=“G”,Direction=“EGPD_Output”,PinType.PinCategory=“mask”,PinType.PinSubCategory=“green”,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=6A6381AC44B6BBEC8AE68C94302EDFB4,PinName=“B”,Direction=“EGPD_Output”,PinType.PinCategory=“mask”,PinType.PinSubCategory=“blue”,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=8BD103DD4E687D57E4104E9C3CC9E446,PinName=“A”,Direction=“EGPD_Output”,PinType.PinCategory=“mask”,PinType.PinSubCategory=“alpha”,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=8B7AB07745D5567EC900E38E0791E91F,PinName=“RGBA”,Direction=“EGPD_Output”,PinType.PinCategory=“mask”,PinType.PinSubCategory=“rgba”,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_23” ExportPath=“/Script/UnrealEd.MaterialGraphNode’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_23’”
Begin Object Class=/Script/Engine.MaterialExpressionScalarParameter Name=“MaterialExpressionScalarParameter_12” ExportPath=“/Script/Engine.MaterialExpressionScalarParameter’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_23.MaterialExpressionScalarParameter_12’”
End Object
Begin Object Name=“MaterialExpressionScalarParameter_12” ExportPath=“/Script/Engine.MaterialExpressionScalarParameter’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_23.MaterialExpressionScalarParameter_12’”
DefaultValue=4.000000
ParameterName=“Rows”
ExpressionGUID=7378732245D7745A965DF798666A0A1D
MaterialExpressionEditorX=-2688
MaterialExpressionEditorY=1008
MaterialExpressionGuid=AC7E4B5F4670D54042A6E79ECCFA5602
Material=“/Script/UnrealEd.PreviewMaterial’/Engine/Transient.M_ProcFloor’”
End Object
MaterialExpression=“/Script/Engine.MaterialExpressionScalarParameter’MaterialExpressionScalarParameter_12’”
NodePosX=-2688
NodePosY=1008
bCanRenameNode=True
NodeGuid=8F566A8941E5C0394D3DB993DD4F8068
CustomProperties Pin (PinId=156756FF4D9B394FE5D21D8F5D2E84A1,PinName=“Default Value”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“red”,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,DefaultValue=“4.0”,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=3B1286C94E503659E0C6EAB5BB88FFFF,PinName=“Output”,PinFriendlyName=NSLOCTEXT(“MaterialGraphNode”, “Space”, " “),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_28 2F722BE94D208ABDDB68459E846AE659,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name=“MaterialGraphNode_24” ExportPath=”/Script/UnrealEd.MaterialGraphNode’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_24’"
Begin Object Class=/Script/Engine.MaterialExpressionScalarParameter Name=“MaterialExpressionScalarParameter_13” ExportPath=“/Script/Engine.MaterialExpressionScalarParameter’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_24.MaterialExpressionScalarParameter_13’”
End Object
Begin Object Name=“MaterialExpressionScalarParameter_13” ExportPath=“/Script/Engine.MaterialExpressionScalarParameter’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_24.MaterialExpressionScalarParameter_13’”
DefaultValue=4.000000
ParameterName=“Columns”
ExpressionGUID=3916A90E4FE4BA8F74508B84C0DD33EA
MaterialExpressionEditorX=-2688
MaterialExpressionEditorY=1104
MaterialExpressionGuid=184A06EA4B7341454AE44FAD90CAAD24
Material=“/Script/UnrealEd.PreviewMaterial’/Engine/Transient.M_ProcFloor’”
End Object
MaterialExpression=“/Script/Engine.MaterialExpressionScalarParameter’MaterialExpressionScalarParameter_13’”
NodePosX=-2688
NodePosY=1104
bCanRenameNode=True
NodeGuid=2523C2DE4600AB8CAE2314B4B967A1A6
CustomProperties Pin (PinId=100B98B145F7FCA47D2B8396681D66C4,PinName=“Default Value”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“red”,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,DefaultValue=“4.0”,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=E61D6C2A4EF043CE5F5939ACB3C17C5A,PinName=“Output”,PinFriendlyName=NSLOCTEXT(“MaterialGraphNode”, “Space”, " “),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_28 B9421BD24BF3343F95F93191C190D376,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name=“MaterialGraphNode_25” ExportPath=”/Script/UnrealEd.MaterialGraphNode’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_25’"
Begin Object Class=/Script/Engine.MaterialExpressionWorldPosition Name=“MaterialExpressionWorldPosition_2” ExportPath=“/Script/Engine.MaterialExpressionWorldPosition’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_25.MaterialExpressionWorldPosition_2’”
End Object
Begin Object Name=“MaterialExpressionWorldPosition_2” ExportPath=“/Script/Engine.MaterialExpressionWorldPosition’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_25.MaterialExpressionWorldPosition_2’”
MaterialExpressionEditorX=-2688
MaterialExpressionEditorY=336
MaterialExpressionGuid=234BFEC643A3312399FA46928D722CA4
Material=“/Script/UnrealEd.PreviewMaterial’/Engine/Transient.M_ProcFloor’”
End Object
MaterialExpression=“/Script/Engine.MaterialExpressionWorldPosition’MaterialExpressionWorldPosition_2’”
NodePosX=-2688
NodePosY=336
AdvancedPinDisplay=Hidden
NodeGuid=D7A2DE884C8BF606A5C279BC914B8C29
CustomProperties Pin (PinId=930F482A4C0E71B73586ECA0A77A8CCE,PinName=“Shader Offsets”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“byte”,PinType.PinSubCategoryObject=“/Script/CoreUObject.Enum’/Script/Engine.EWorldPositionIncludedOffsets’”,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue=“Absolute World Position (Including Material Shader Offsets)”,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
CustomProperties Pin (PinId=531ADA8844C70FDAE663F084E2CBDFD4,PinName=“XYZ”,Direction=“EGPD_Output”,PinType.PinCategory=“mask”,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=C8E5566148BD9DCAD001629FCC6626F1,PinName=“XY”,Direction=“EGPD_Output”,PinType.PinCategory=“mask”,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_26 2BDBA55A48E86F1FE26C358D4C3B3AE5,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=47C0732A48E7BD9072957A8F492B0ED5,PinName=“Z”,Direction=“EGPD_Output”,PinType.PinCategory=“mask”,PinType.PinSubCategory=“blue”,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_26” ExportPath=“/Script/UnrealEd.MaterialGraphNode’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_26’”
Begin Object Class=/Script/Engine.MaterialExpressionDivide Name=“MaterialExpressionDivide_10” ExportPath=“/Script/Engine.MaterialExpressionDivide’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_26.MaterialExpressionDivide_10’”
End Object
Begin Object Name=“MaterialExpressionDivide_10” ExportPath=“/Script/Engine.MaterialExpressionDivide’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_26.MaterialExpressionDivide_10’”
A=(Expression=“/Script/Engine.MaterialExpressionWorldPosition’MaterialGraphNode_25.MaterialExpressionWorldPosition_2’”,OutputIndex=1,Mask=1,MaskR=1,MaskG=1)
B=(Expression=“/Script/Engine.MaterialExpressionScalarParameter’MaterialGraphNode_27.MaterialExpressionScalarParameter_14’”)
MaterialExpressionEditorX=-2416
MaterialExpressionEditorY=384
MaterialExpressionGuid=EC09255E41BC57B219DD77AC352FAA95
Material=“/Script/UnrealEd.PreviewMaterial’/Engine/Transient.M_ProcFloor’”
End Object
MaterialExpression=“/Script/Engine.MaterialExpressionDivide’MaterialExpressionDivide_10’”
NodePosX=-2416
NodePosY=384
NodeGuid=DE0F8B5D4D62801561A186A28B7B972A
CustomProperties Pin (PinId=2BDBA55A48E86F1FE26C358D4C3B3AE5,PinName=“A”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“red”,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,DefaultValue=“1.0”,LinkedTo=(MaterialGraphNode_25 C8E5566148BD9DCAD001629FCC6626F1,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=D08083DB4A74A9A1341B06BABB36029C,PinName=“B”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“red”,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,DefaultValue=“2.0”,LinkedTo=(MaterialGraphNode_27 570A988D429E419CF2D53A8161E76729,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=AB3E6CFD4253E7DF4566BA95E36BEDEC,PinName=“Output”,PinFriendlyName=NSLOCTEXT(“MaterialGraphNode”, “Space”, " “),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_2 D3A4B7D740D3A70F7C18B693E71C6264,MaterialGraphNode_13 6221C4054D8AB9102868B6B02E8F1FC0,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name=“MaterialGraphNode_27” ExportPath=”/Script/UnrealEd.MaterialGraphNode’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_27’"
Begin Object Class=/Script/Engine.MaterialExpressionScalarParameter Name=“MaterialExpressionScalarParameter_14” ExportPath=“/Script/Engine.MaterialExpressionScalarParameter’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_27.MaterialExpressionScalarParameter_14’”
End Object
Begin Object Name=“MaterialExpressionScalarParameter_14” ExportPath=“/Script/Engine.MaterialExpressionScalarParameter’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_27.MaterialExpressionScalarParameter_14’”
DefaultValue=32.000000
ParameterName=“Scaling”
ExpressionGUID=E24E7EC34283D8C4B97144AD949B46BB
MaterialExpressionEditorX=-2688
MaterialExpressionEditorY=544
MaterialExpressionGuid=71C7011645DFE5503CBA41895E5BD23D
Material=“/Script/UnrealEd.PreviewMaterial’/Engine/Transient.M_ProcFloor’”
Desc=“Worldspace units you want each cell to be painted across.”
bCommentBubbleVisible=True
End Object
MaterialExpression=“/Script/Engine.MaterialExpressionScalarParameter’MaterialExpressionScalarParameter_14’”
NodePosX=-2688
NodePosY=544
bCommentBubbleVisible=True
bCanRenameNode=True
NodeComment=“Worldspace units you want each cell to be painted across.”
NodeGuid=7F51BCA9452D586A354CED8A0A8BB48A
CustomProperties Pin (PinId=1B080EB444472E72A782D9B9BB7DCCA8,PinName=“Default Value”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“red”,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,DefaultValue=“32.0”,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=570A988D429E419CF2D53A8161E76729,PinName=“Output”,PinFriendlyName=NSLOCTEXT(“MaterialGraphNode”, “Space”, " “),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_26 D08083DB4A74A9A1341B06BABB36029C,),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” ExportPath=”/Script/UnrealEd.MaterialGraphNode’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_28’"
Begin Object Class=/Script/Engine.MaterialExpressionConvert Name=“MaterialExpressionConvert_3” ExportPath=“/Script/Engine.MaterialExpressionConvert’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_28.MaterialExpressionConvert_3’”
End Object
Begin Object Name=“MaterialExpressionConvert_3” ExportPath=“/Script/Engine.MaterialExpressionConvert’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_28.MaterialExpressionConvert_3’”
ConvertInputs(0)=(ExpressionInput=(Expression=“/Script/Engine.MaterialExpressionScalarParameter’MaterialGraphNode_23.MaterialExpressionScalarParameter_12’”))
ConvertInputs(1)=(ExpressionInput=(Expression=“/Script/Engine.MaterialExpressionScalarParameter’MaterialGraphNode_24.MaterialExpressionScalarParameter_13’”))
ConvertOutputs(0)=(Type=Vector2)
ConvertMappings(1)=(InputIndex=1,OutputComponentIndex=1)
NodeName=“Make Vector2”
MaterialExpressionEditorX=-2464
MaterialExpressionEditorY=1024
MaterialExpressionGuid=24B34A9A4464BBF1D726919BC4966DD1
Material=“/Script/UnrealEd.PreviewMaterial’/Engine/Transient.M_ProcFloor’”
Outputs(0)=()
End Object
MaterialExpression=“/Script/Engine.MaterialExpressionConvert’MaterialExpressionConvert_3’”
NodePosX=-2464
NodePosY=1024
NodeGuid=E8AC430548E149CF4A5E9B8B6AD75868
CustomProperties Pin (PinId=2F722BE94D208ABDDB68459E846AE659,PinName=“Input”,PinFriendlyName=NSLOCTEXT(“MaterialGraphNode”, “Space”, " “),PinType.PinCategory=“required”,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 3B1286C94E503659E0C6EAB5BB88FFFF,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=B9421BD24BF3343F95F93191C190D376,PinName=“Input2”,PinFriendlyName=NSLOCTEXT(“MaterialGraphNode”, “Space”, " “),PinType.PinCategory=“required”,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_24 E61D6C2A4EF043CE5F5939ACB3C17C5A,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=85B3119F48A0B0F51335B38B73F40ED6,PinName=“Output”,PinFriendlyName=NSLOCTEXT(“MaterialGraphNode”, “Space”, " “),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_13 75454A2E439AF9F1BB9175AFB1E5E404,),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” ExportPath=”/Script/UnrealEd.MaterialGraphNode’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_29’"
Begin Object Class=/Script/Engine.MaterialExpressionScalarParameter Name=“MaterialExpressionScalarParameter_15” ExportPath=“/Script/Engine.MaterialExpressionScalarParameter’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_29.MaterialExpressionScalarParameter_15’”
End Object
Begin Object Name=“MaterialExpressionScalarParameter_15” ExportPath=“/Script/Engine.MaterialExpressionScalarParameter’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_29.MaterialExpressionScalarParameter_15’”
DefaultValue=27.000000
ParameterName=“Random_Seed”
ExpressionGUID=AC2D353F46F89AE4E2BF578D619CF87D
MaterialExpressionEditorX=-2256
MaterialExpressionEditorY=544
MaterialExpressionGuid=8B9850424720B28EEB3028A402F14410
Material=“/Script/UnrealEd.PreviewMaterial’/Engine/Transient.M_ProcFloor’”
Desc=“Alters the output fo the vectornoise.”
bCommentBubbleVisible=True
End Object
MaterialExpression=“/Script/Engine.MaterialExpressionScalarParameter’MaterialExpressionScalarParameter_15’”
NodePosX=-2256
NodePosY=544
bCommentBubbleVisible=True
bCanRenameNode=True
NodeComment=“Alters the output fo the vectornoise.”
NodeGuid=09458D18457CBFFA760A0DA5AEF27A66
CustomProperties Pin (PinId=5B692D4149F2CA28F804BC836D2CF952,PinName=“Default Value”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“red”,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,DefaultValue=“27.0”,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=B0D2C7A24E7AA60D686DCB8BACB4A057,PinName=“Output”,PinFriendlyName=NSLOCTEXT(“MaterialGraphNode”, “Space”, " “),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_1 C48396D34947DFE56F08AEA722F1E205,),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” ExportPath=”/Script/UnrealEd.MaterialGraphNode’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_30’"
Begin Object Class=/Script/Engine.MaterialExpressionRotator Name=“MaterialExpressionRotator_1” ExportPath=“/Script/Engine.MaterialExpressionRotator’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_30.MaterialExpressionRotator_1’”
End Object
Begin Object Name=“MaterialExpressionRotator_1” ExportPath=“/Script/Engine.MaterialExpressionRotator’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_30.MaterialExpressionRotator_1’”
Coordinate=(Expression=“/Script/Engine.MaterialExpressionAdd’MaterialGraphNode_14.MaterialExpressionAdd_1’”)
Time=(Expression=“/Script/Engine.MaterialExpressionNamedRerouteUsage’MaterialGraphNode_31.MaterialExpressionNamedRerouteUsage_4’”)
CenterX=1.000000
CenterY=1.000000
MaterialExpressionEditorX=-1584
MaterialExpressionEditorY=1008
MaterialExpressionGuid=7A85D249400035BDB299F0B81DBB051E
Material=“/Script/UnrealEd.PreviewMaterial’/Engine/Transient.M_ProcFloor’”
End Object
MaterialExpression=“/Script/Engine.MaterialExpressionRotator’MaterialExpressionRotator_1’”
NodePosX=-1584
NodePosY=1008
AdvancedPinDisplay=Hidden
NodeGuid=2320929D4D4DD33FA5496096CD3A47B3
CustomProperties Pin (PinId=08A5E8B14EDEB1859B53E6A7241A6E8A,PinName=“Coordinate”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“int”,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,DefaultValue=“0”,LinkedTo=(MaterialGraphNode_14 BB12C5F14F0EB0813A6ABA82CC81AA4A,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=53986CB5444C794426669CBC51CD66CB,PinName=“Time”,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 06A51F5647214442F76B2797B892E9DA,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
CustomProperties Pin (PinId=B946FBB046357096FED41CA5336B6A25,PinName=“Center X”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“red”,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,DefaultValue=“1.0”,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
CustomProperties Pin (PinId=65ACA10D4A0B0FAEBB186BA37246FDDD,PinName=“Center Y”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“red”,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,DefaultValue=“1.0”,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
CustomProperties Pin (PinId=B28907F64B2076B8250907A3338C48E9,PinName=“Speed”,PinType.PinCategory=“optional”,PinType.PinSubCategory=“red”,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,DefaultValue=“0.25”,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=True,bOrphanedPin=False,)
CustomProperties Pin (PinId=EDE9A18C475A06E3BF90DEA2FD8B1CBC,PinName=“Output”,PinFriendlyName=NSLOCTEXT(“MaterialGraphNode”, “Space”, " “),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_22 9B8373F94CD4167D474D27B5F3EA1867,),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” ExportPath=”/Script/UnrealEd.MaterialGraphNode’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_31’"
Begin Object Class=/Script/Engine.MaterialExpressionNamedRerouteUsage Name=“MaterialExpressionNamedRerouteUsage_4” ExportPath=“/Script/Engine.MaterialExpressionNamedRerouteUsage’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_31.MaterialExpressionNamedRerouteUsage_4’”
End Object
Begin Object Name=“MaterialExpressionNamedRerouteUsage_4” ExportPath=“/Script/Engine.MaterialExpressionNamedRerouteUsage’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_31.MaterialExpressionNamedRerouteUsage_4’”
Declaration=“/Script/Engine.MaterialExpressionNamedRerouteDeclaration’MaterialGraphNode_12.MaterialExpressionNamedRerouteDeclaration_1’”
DeclarationGuid=22C025F943F68019F363D9B8640B0334
MaterialExpressionEditorX=-1808
MaterialExpressionEditorY=1216
MaterialExpressionGuid=6C61A4DD41C5D76B623D478FC39A4ECC
Material=“/Script/UnrealEd.PreviewMaterial’/Engine/Transient.M_ProcFloor’”
End Object
MaterialExpression=“/Script/Engine.MaterialExpressionNamedRerouteUsage’MaterialExpressionNamedRerouteUsage_4’”
NodePosX=-1808
NodePosY=1216
NodeGuid=F7DA94E546B053613CF6CF8EF223B140
CustomProperties Pin (PinId=06A51F5647214442F76B2797B892E9DA,PinName=“Output”,PinFriendlyName=NSLOCTEXT(“MaterialGraphNode”, “Space”, " “),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 53986CB5444C794426669CBC51CD66CB,),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_0” ExportPath=”/Script/UnrealEd.MaterialGraphNode_Comment’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_Comment_0’"
Begin Object Class=/Script/Engine.MaterialExpressionComment Name=“MaterialExpressionComment_2” ExportPath=“/Script/Engine.MaterialExpressionComment’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_Comment_0.MaterialExpressionComment_2’”
End Object
Begin Object Name=“MaterialExpressionComment_2” ExportPath=“/Script/Engine.MaterialExpressionComment’/Engine/Transient.M_ProcFloor:MaterialGraph_0.MaterialGraphNode_Comment_0.MaterialExpressionComment_2’”
SizeX=1152
SizeY=112
Text=“ref\r\n - atlas addressing - https://www.youtube.com/watch?v=8pBmS-9Vt4E\r\n - randomization (VecNoise) - https://www.youtube.com/watch?v=NLisbiHfxUM
CommentColor=(R=0.150000,G=0.150000,B=0.150000,A=0.500000)
MaterialExpressionEditorX=-2688
MaterialExpressionEditorY=176
MaterialExpressionGuid=1CBBADFC45925F2533757B9FADC561F3
Material=“/Script/UnrealEd.PreviewMaterial’/Engine/Transient.M_ProcFloor’”
End Object
MaterialExpressionComment=“/Script/Engine.MaterialExpressionComment’MaterialExpressionComment_2’”
CommentColor=(R=0.150000,G=0.150000,B=0.150000,A=0.500000)
bCommentBubbleVisible_InDetailsPanel=False
NodePosX=-2688
NodePosY=176
NodeWidth=1152
NodeHeight=112
bCommentBubblePinned=False
bCommentBubbleVisible=False
NodeComment=“ref\r\n - atlas addressing - https://www.youtube.com/watch?v=8pBmS-9Vt4E\r\n - randomization (VecNoise) - https://www.youtube.com/watch?v=NLisbiHfxUM
NodeGuid=936B91404F5B663E4A63929CB92E09B1
End Object

From here you can make/take a texture-atlas of floor tile textures and use these UVs to randomly pick and rotate each cell across the world. The dimensions of the atlas are parameterized and can be used for the corresponding normal-maps, etc. The row/col count can be 1 if you only have a single-tile in your texture.

Add some grime, etc on top of your randomized floor, whatever you want and go from here! :smiley: