You can control color for the material using AbsoluteWorldPosition + distance nodes and MaterialParameterCollection. I think.
In material parameter collection use a vector as a ping starting location and then in the material measure the distance from AbsoluteWorldPosition to the material collection vector you’ve created. Divide it by… something and you get your distance gradient.
Begin Object Class=MaterialGraphNode Name="MaterialGraphNode_376"
Begin Object Class=EdGraphPin Name="EdGraphPin_20675"
End Object
Begin Object Class=EdGraphPin Name="EdGraphPin_20674"
End Object
Begin Object Class=EdGraphPin Name="EdGraphPin_20673"
End Object
Begin Object Class=EdGraphPin Name="EdGraphPin_20672"
End Object
Begin Object Class=MaterialExpressionLinearInterpolate Name="MaterialExpressionLinearInterpolate_5"
End Object
Begin Object Name="EdGraphPin_20675"
PinName="Output"
PinFriendlyName=" "
Direction=EGPD_Output
LinkedTo(0)=EdGraphPin'MaterialGraphNode_Root_13.EdGraphPin_20650'
End Object
Begin Object Name="EdGraphPin_20674"
PinName="Alpha"
PinType=(PinCategory="optional")
LinkedTo(0)=EdGraphPin'MaterialGraphNode_381.EdGraphPin_20684'
End Object
Begin Object Name="EdGraphPin_20673"
PinName="B"
PinType=(PinCategory="optional")
LinkedTo(0)=EdGraphPin'MaterialGraphNode_382.EdGraphPin_20685'
End Object
Begin Object Name="EdGraphPin_20672"
PinName="A"
PinType=(PinCategory="optional")
LinkedTo(0)=EdGraphPin'MaterialGraphNode_377.EdGraphPin_20676'
End Object
Begin Object Name="MaterialExpressionLinearInterpolate_5"
A=(Expression=MaterialExpressionConstant3Vector'MaterialGraphNode_377.MaterialExpressionConstant3Vector_16')
B=(Expression=MaterialExpressionConstant3Vector'MaterialGraphNode_382.MaterialExpressionConstant3Vector_17')
Alpha=(Expression=MaterialExpressionMultiply'MaterialGraphNode_381.MaterialExpressionMultiply_32')
MaterialExpressionEditorX=-176
MaterialExpressionEditorY=144
MaterialExpressionGuid=A689B7644F3DDC1CF1553AB8A947ECCD
Material=PreviewMaterial'/Engine/Transient.PreviewMaterial_6'
End Object
MaterialExpression=MaterialExpressionLinearInterpolate'MaterialExpressionLinearInterpolate_5'
Pins(0)=EdGraphPin'EdGraphPin_20672'
Pins(1)=EdGraphPin'EdGraphPin_20673'
Pins(2)=EdGraphPin'EdGraphPin_20674'
Pins(3)=EdGraphPin'EdGraphPin_20675'
NodePosX=-176
NodePosY=144
NodeGuid=B6887CEB4EF1CA3444541A8AB6388917
End Object
Begin Object Class=MaterialGraphNode Name="MaterialGraphNode_377"
Begin Object Class=EdGraphPin Name="EdGraphPin_20676"
End Object
Begin Object Class=MaterialExpressionConstant3Vector Name="MaterialExpressionConstant3Vector_16"
End Object
Begin Object Name="EdGraphPin_20676"
PinName="Output"
PinFriendlyName=" "
Direction=EGPD_Output
LinkedTo(0)=EdGraphPin'MaterialGraphNode_376.EdGraphPin_20672'
End Object
Begin Object Name="MaterialExpressionConstant3Vector_16"
Constant=(R=0.057438,G=0.965000,B=0.133702,A=0.000000)
MaterialExpressionEditorX=-592
MaterialExpressionEditorY=-160
MaterialExpressionGuid=D940F43F4815953F8616EFB789EC2BBF
Material=PreviewMaterial'/Engine/Transient.PreviewMaterial_6'
End Object
MaterialExpression=MaterialExpressionConstant3Vector'MaterialExpressionConstant3Vector_16'
Pins(0)=EdGraphPin'EdGraphPin_20676'
NodePosX=-592
NodePosY=-160
NodeGuid=A8FFAD064184475D6F9184912D993919
End Object
Begin Object Class=MaterialGraphNode Name="MaterialGraphNode_378"
Begin Object Class=EdGraphPin Name="EdGraphPin_20677"
End Object
Begin Object Class=MaterialExpressionObjectPositionWS Name="MaterialExpressionObjectPositionWS_18"
End Object
Begin Object Name="EdGraphPin_20677"
PinName="Output"
PinFriendlyName=" "
Direction=EGPD_Output
LinkedTo(0)=EdGraphPin'MaterialGraphNode_380.EdGraphPin_20680'
End Object
Begin Object Name="MaterialExpressionObjectPositionWS_18"
MaterialExpressionEditorX=-688
MaterialExpressionEditorY=320
MaterialExpressionGuid=67C2AB5440E12E289881A69C54EC0385
Material=PreviewMaterial'/Engine/Transient.PreviewMaterial_6'
End Object
MaterialExpression=MaterialExpressionObjectPositionWS'MaterialExpressionObjectPositionWS_18'
Pins(0)=EdGraphPin'EdGraphPin_20677'
NodePosX=-688
NodePosY=320
NodeGuid=AD5E1C6F4921A0981ED9ECBE8A6994B9
End Object
Begin Object Class=MaterialGraphNode Name="MaterialGraphNode_379"
Begin Object Class=EdGraphPin Name="EdGraphPin_20678"
End Object
Begin Object Class=MaterialExpressionWorldPosition Name="MaterialExpressionWorldPosition_9"
End Object
Begin Object Name="EdGraphPin_20678"
PinName="Output"
PinFriendlyName=" "
Direction=EGPD_Output
LinkedTo(0)=EdGraphPin'MaterialGraphNode_380.EdGraphPin_20679'
End Object
Begin Object Name="MaterialExpressionWorldPosition_9"
MaterialExpressionEditorX=-720
MaterialExpressionEditorY=192
MaterialExpressionGuid=14B4FF84460B349B4C777B915F30D725
Material=PreviewMaterial'/Engine/Transient.PreviewMaterial_6'
End Object
MaterialExpression=MaterialExpressionWorldPosition'MaterialExpressionWorldPosition_9'
Pins(0)=EdGraphPin'EdGraphPin_20678'
NodePosX=-720
NodePosY=192
NodeGuid=C2884EE64762DF9F8D225692FDD9F584
End Object
Begin Object Class=MaterialGraphNode Name="MaterialGraphNode_380"
Begin Object Class=EdGraphPin Name="EdGraphPin_20681"
End Object
Begin Object Class=EdGraphPin Name="EdGraphPin_20680"
End Object
Begin Object Class=EdGraphPin Name="EdGraphPin_20679"
End Object
Begin Object Class=MaterialExpressionDistance Name="MaterialExpressionDistance_6"
End Object
Begin Object Name="EdGraphPin_20681"
PinName="Output"
PinFriendlyName=" "
Direction=EGPD_Output
LinkedTo(0)=EdGraphPin'MaterialGraphNode_381.EdGraphPin_20682'
End Object
Begin Object Name="EdGraphPin_20680"
PinName="B"
PinType=(PinCategory="required")
LinkedTo(0)=EdGraphPin'MaterialGraphNode_378.EdGraphPin_20677'
End Object
Begin Object Name="EdGraphPin_20679"
PinName="A"
PinType=(PinCategory="required")
LinkedTo(0)=EdGraphPin'MaterialGraphNode_379.EdGraphPin_20678'
End Object
Begin Object Name="MaterialExpressionDistance_6"
A=(Expression=MaterialExpressionWorldPosition'MaterialGraphNode_379.MaterialExpressionWorldPosition_9')
B=(Expression=MaterialExpressionObjectPositionWS'MaterialGraphNode_378.MaterialExpressionObjectPositionWS_18')
MaterialExpressionEditorX=-512
MaterialExpressionEditorY=288
MaterialExpressionGuid=044599E743E9A9FBE0D571AE5D252014
Material=PreviewMaterial'/Engine/Transient.PreviewMaterial_6'
End Object
MaterialExpression=MaterialExpressionDistance'MaterialExpressionDistance_6'
Pins(0)=EdGraphPin'EdGraphPin_20679'
Pins(1)=EdGraphPin'EdGraphPin_20680'
Pins(2)=EdGraphPin'EdGraphPin_20681'
NodePosX=-512
NodePosY=288
NodeGuid=A7F2EA1749F55B767274D0AA4FA2D758
End Object
Begin Object Class=MaterialGraphNode Name="MaterialGraphNode_381"
Begin Object Class=EdGraphPin Name="EdGraphPin_20684"
End Object
Begin Object Class=EdGraphPin Name="EdGraphPin_20683"
End Object
Begin Object Class=EdGraphPin Name="EdGraphPin_20682"
End Object
Begin Object Class=MaterialExpressionMultiply Name="MaterialExpressionMultiply_32"
End Object
Begin Object Name="EdGraphPin_20684"
PinName="Output"
PinFriendlyName=" "
Direction=EGPD_Output
LinkedTo(0)=EdGraphPin'MaterialGraphNode_376.EdGraphPin_20674'
End Object
Begin Object Name="EdGraphPin_20683"
PinName="B"
PinType=(PinCategory="optional")
End Object
Begin Object Name="EdGraphPin_20682"
PinName="A"
PinType=(PinCategory="optional")
LinkedTo(0)=EdGraphPin'MaterialGraphNode_380.EdGraphPin_20681'
End Object
Begin Object Name="MaterialExpressionMultiply_32"
A=(Expression=MaterialExpressionDistance'MaterialGraphNode_380.MaterialExpressionDistance_6')
ConstB=0.000300
MaterialExpressionEditorX=-400
MaterialExpressionEditorY=256
MaterialExpressionGuid=F6E1CE78471C638D1962DFBFD299A1E8
Material=PreviewMaterial'/Engine/Transient.PreviewMaterial_6'
End Object
MaterialExpression=MaterialExpressionMultiply'MaterialExpressionMultiply_32'
Pins(0)=EdGraphPin'EdGraphPin_20682'
Pins(1)=EdGraphPin'EdGraphPin_20683'
Pins(2)=EdGraphPin'EdGraphPin_20684'
NodePosX=-400
NodePosY=256
NodeGuid=E707E74041FE470B96C859B72E73E339
End Object
Begin Object Class=MaterialGraphNode Name="MaterialGraphNode_382"
Begin Object Class=EdGraphPin Name="EdGraphPin_20685"
End Object
Begin Object Class=MaterialExpressionConstant3Vector Name="MaterialExpressionConstant3Vector_17"
End Object
Begin Object Name="EdGraphPin_20685"
PinName="Output"
PinFriendlyName=" "
Direction=EGPD_Output
LinkedTo(0)=EdGraphPin'MaterialGraphNode_376.EdGraphPin_20673'
End Object
Begin Object Name="MaterialExpressionConstant3Vector_17"
Constant=(R=0.965000,G=0.298705,B=0.000000,A=0.000000)
MaterialExpressionEditorX=-592
MaterialExpressionEditorY=32
MaterialExpressionGuid=D940F43F4815953F8616EFB789EC2BBF
Material=PreviewMaterial'/Engine/Transient.PreviewMaterial_6'
End Object
MaterialExpression=MaterialExpressionConstant3Vector'MaterialExpressionConstant3Vector_17'
Pins(0)=EdGraphPin'EdGraphPin_20685'
NodePosX=-592
NodePosY=32
NodeGuid=646CD6E044DD47BB121544958865FF2D
End Object
Just change ObjectPosition to a vector from collection.
[/QUOTE]
Gonna try this out, thanks for the advice.
Or maybe you should try something different than trace?
GPU sprites work best as I can tell, problem is, they are random and their collision is calculated through screen depth. Means, no collision with things player can’t see or that are behind em.
[/QUOTE]
And wow, that looks really great and performs extremely well, I’m gonna burn through the particle emitter tutorials so I can try this out! I was thinking that perhaps the randomness and no collision with objects not on screen might be a problem for my gameplay idea, but I may be able to work around that if this works well enough.