Skip to content

Quick Setup

Ryan Sweeney edited this page Mar 4, 2025 · 12 revisions

Enable the plugin found under Rendering.


Make sure the rendering settings are set appropriately. Custom Depth-Stencil Pass under Postprocessing needs to be set to Enabled with Stencil. image

The Custom Depth with TemporalAA Jitter option may have a change in quality depending on if you're using TAA, TSR etc or FXAA


Once enabled, you can set it up by going to Edit > Project Settings > Plugins > Distance Field Outline. Ensuring it's enabled, add an element to the Distance Field Settings array. (Because this is older documentation, your screen may look different but it should fundamentally have the same things)


The following settings are used by the example materials that come with the plugin - copy and paste these into your DefaultPlugin.ini file

For v1.2

[/Script/DistanceFieldOutlineSettings.DistanceFieldOutlineSettings] bEnable=True bAutomaticResize=False bActiveStencilCheck=False +DistanceFieldConfigs=(bEnable=True,OutlineSource=Stencil,StencilSourceConfig=(bUseStencilGroup=False,StencilIndex=1),RenderTargetSourceConfig=(SourceTexture=None,ProcessMaskSourceTexture=None),OutlineType=DistanceField,UpdateFrequency=EveryFrame,TargetFrameRate=60.000000,DistanceFieldConfig=(ExtraPasses=0,bSmoothPass=False,ProcessMaskSize=PMS_Disabled,MaxPixelDistance=PX_Full,OptimisationMethod=None,ScalingConfig=(DownsampleScale=1.000000,ScalingSampleFilter=Nearest,SamplingThreshold=0.500000))) +DistanceFieldConfigs=(bEnable=True,OutlineSource=Stencil,StencilSourceConfig=(bUseStencilGroup=False,StencilIndex=2),RenderTargetSourceConfig=(SourceTexture=None,ProcessMaskSourceTexture=None),OutlineType=Simple,UpdateFrequency=EveryFrame,TargetFrameRate=60.000000,DistanceFieldConfig=(ExtraPasses=0,bSmoothPass=False,ProcessMaskSize=PMS_Disabled,MaxPixelDistance=PX_Simple,OptimisationMethod=None,ScalingConfig=(DownsampleScale=1.000000,ScalingSampleFilter=Nearest,SamplingThreshold=0.500000))) +DistanceFieldConfigs=(bEnable=True,OutlineSource=Stencil,StencilSourceConfig=(bUseStencilGroup=False,StencilIndex=3),RenderTargetSourceConfig=(SourceTexture=None,ProcessMaskSourceTexture=None),OutlineType=DistanceField,UpdateFrequency=EveryFrame,TargetFrameRate=60.000000,DistanceFieldConfig=(ExtraPasses=0,bSmoothPass=False,ProcessMaskSize=PMS_Disabled,MaxPixelDistance=PX_Full,OptimisationMethod=None,ScalingConfig=(DownsampleScale=1.000000,ScalingSampleFilter=Nearest,SamplingThreshold=0.500000))) +DistanceFieldConfigs=(bEnable=True,OutlineSource=Stencil,StencilSourceConfig=(bUseStencilGroup=False,StencilIndex=0),RenderTargetSourceConfig=(SourceTexture=None,ProcessMaskSourceTexture=None),OutlineType=DistanceField,UpdateFrequency=EveryFrame,TargetFrameRate=60.000000,DistanceFieldConfig=(ExtraPasses=0,bSmoothPass=False,ProcessMaskSize=PMS_2,MaxPixelDistance=PX_2,OptimisationMethod=None,ScalingConfig=(DownsampleScale=1.000000,ScalingSampleFilter=Nearest,SamplingThreshold=0.500000)))

If you have issues with the above, do the following. Create a new distance field config and set the first (0) index like so: image

Create another and set the second (1) index like so: image

Create another and set the third (2) index like so: image

Create another and set the fourth (3) index like so: image

For v1.1

[/Script/DistanceFieldOutlineSettings.DistanceFieldOutlineSettings] bEnable=True bAutomaticResize=False +DistanceFieldSettings=(bEnable=True,StencilIndex=1,OutlineType=DistanceField,ProcessMaskSize=PMS_16,MaxPixelDistance=PX_8,bHalfJFA=False) +DistanceFieldSettings=(bEnable=True,StencilIndex=2,OutlineType=SinglePixelIn,ProcessMaskSize=PMS_Disabled,MaxPixelDistance=PX_Simple,bHalfJFA=False) +DistanceFieldSettings=(bEnable=True,StencilIndex=3,OutlineType=SinglePixelOut,ProcessMaskSize=PMS_Disabled,MaxPixelDistance=PX_Simple,bHalfJFA=False) +DistanceFieldSettings=(bEnable=True,StencilIndex=4,OutlineType=DoublePixel,ProcessMaskSize=PMS_Disabled,MaxPixelDistance=PX_Simple,bHalfJFA=False) +DistanceFieldSettings=(bEnable=True,StencilIndex=5,OutlineType=DistanceField,ProcessMaskSize=PMS_128,MaxPixelDistance=PX_128,bHalfJFA=True)

Then create a material that uses the Distance Field material node and make sure the Blendable Location is set to Before Tonemapping to avoid jittering.


Set the Distance Field material node values to the appropriate values. Note: The Selected Outline Settings just lets you know which settings you have selected, these cannot be edited in the material node.


Apply to your post-process volume and you're done!

Clone this wiki locally