rdSplatTools Tutorial 2.1 – Hot Area
Last Updated: 5th October 2026
Tutorial created using rdSplatTools version 1.00
This first tutorial is very simple – we just paint a simple circle with falloff and read it back in the player characters BP and output the results to the screen and log.
Step 1. Open a level and paint a mask
Open any level where you have a PlayerCharacter as we’ll add a few BP nodes to it. Go to the rdSplatTools Editor Mode and paint a spot (a quick click) on the landscape.

Save this into your Project and go back to Selection Mode.

Step 2. Edit the Player Character BP
Open your Player Character in the BP editor and add this code to the BeginPlay event:

Then add this code to the tick- the call is filtered out if the location is the same as the previous call so it can be added almost anywhere, even tick as it takes virtually no time.

Once they’re added, compile and save the BP.
Step 3. Done – Play the level
Now play the level and monitor the logging, when you move you should see a report of the value of your splat – ranging from 0.0 to 1.0 when directly on top of it. It can help to place a cube or something on the area you’ve painted to make it easy to find when playing.

Step 4. C++ Equivalent
You can access the rdSplatTools Subsystem from C++ too, the C++ functions to use to create the above are:
UrdSplatToolsSubsystem* rdSplatSubsystem=GEngine?GEngine->GetEngineSubsystem<UrdSplatToolsSubsystem>():nullptr;
if(rdSplatSubsystem)
{
rdSplatSubsystem->rdSetBakedMaskAsset(UrdSplatBakedMaskAsset* asset);
// or
rdSplatSubsystem->rdLoadBakedMaskAsset(const FString& assetPath);
TArray< float > values;
if( rdSplatSubsystem->rdGetMaskValuesAt(x, y, values) )
{
for(float v : values)
{
// v is between 0.0 and 1.0
}
}
}