Distance fields also known as Signed Distance Fields are images/2D or 3D arrays of data where each location contains the distance to the nearest edge, surface or seed location. They can be 3D or 2D with the only difference being how they're calculated and stored.
How are they used in the plugin?
For the purpose of this plugin, they are created by first creating a simple outline.
It's worth noting that the plugin can also just output the simple outline if desired.
This outline gets used as a "seed". Seeds in this context are any pixels that we want to get the distance to from every other pixel. The Jump Flood Algorithm is used on the seed to generate a distance field.
Which then gets used to create various kind of post-process outline effects.
Example effects that come with the Distance Field Outline plugin. Bottom left & bottom middle are both animated effects that use the distance along with time to create motion. Bottom right is a distortion effect using the distance field to create an offset.
Where else do they get used?
They're used in many different places, for example, Unreal Engine has been using 3D Distance Fields since Unreal Engine 4 for some of their shadowing techniques. They use the distance fields of meshes for this. More recently in Unreal Engine 5, Lumen uses these same distance fields to achieve its realistic lighting at real-time thanks to the performance gains distance fields provide over normal ray marching.
It's not just video game engines but render engines can leverage 3D distance fields to speed up ray/path tracing by using a method called sphere-marching. Robotics also make use of distance fields as a way to help robots understand their location in the world.
Distance fields have a variety of uses with the goal of the Distance Field Plugin to provide the means of generating them for visual effects.