Overview
The revision includes some additional tests to help model some collision rules that help determine overhangs, flat surfaces with no overhangs and drips. The Goop tracer acts as the quarterback and hands off interface arrays to the other actors such as the table, barrier and trover for the additional computations to help get more variety in the cascading dynamics to emulate flowing, dripping and dangling slime. Each type of asset required different logic as the full list of tests was not needed.  Below are the three types that go from most complex to the least.
BP_Goop_Tracer
The Goop tracer sets up the initial hit locations and hands off the trace data to the individual actors, via a BP interface where the more complex interaction modeling is setup. This BP also utilizes custom trace channels to help filter out unneeded trace calls.
The top block (Ground Tracer) fires upwards from the ground. The bottom block (Air Tracer) fires from the top down to account for falling interactions.
The top block (Ground Tracer) fires upwards from the ground. The bottom block (Air Tracer) fires from the top down to account for falling interactions.
These blocks sets up wall hits and some of the bottom elements such as bottom splash and the splatters.
These blocks sets up wall hits and some of the bottom elements such as bottom splash and the splatters.
Custom Tracer Channels to help differentiate what assets should receive certain types of traces.
Custom Tracer Channels to help differentiate what assets should receive certain types of traces.
BP_Barricade
BP_Barricade is an example of a message receiver interface which takes the tracer array and parses the indexes to spawn the appropriate assets. It checks for verticality, overhangs and clearance. If there is an overhang it creates the dripping mesh and if it's a flat surface without an overhang it creates the dangle effects provided there is some clearance to do so. It then runs a trace to the ground and creates a series of drips under each one.
Overhang, flat surface, clearance check and drip location.
Overhang, flat surface, clearance check and drip location.
BP Barricade revision flow.
BP Barricade revision flow.
BP_Impulse_Table
BP_Table is similar to the first example with the exception that it has a branch that effects low angle hits and places a static blob for clearance reasons. The other message it can handle is hits from the air tracer message. When receiving a hit from the air, there is an attempt to correct hits happening too close to the edge. It does this by taking the original hit location and doing a few more traces from slightly higher and taking an average location of the hits in an attempt to smoothen out the location.
Checking the surface for a usable average location to ensure particles don't overhang and float over nothing. (Noted with blue debug)
Checking the surface for a usable average location to ensure particles don't overhang and float over nothing. (Noted with blue debug)
BP_Impulse_table revision flow.
BP_Impulse_table revision flow.
BP_Trover
Trover ignores the trace array and simply employs the message to spawn the Niagara wrapper that contains the playback as a particle.
Back to Top