rdInst C++ Manual version 1.00

Last updated 13th November 2022

Section 1. Library Static Methods

There are a small number of static Helper Methods built into the rdInstBPLibrary.

These static methods return and/or create UserAssetData contained in the meshes or Components. These AssetUserData Structs contain the Randomization and Transform information used to Randomize and store the visibility settings of the rdInst Actors. Any Component can have these Structs, to find out more about them:

https://docs.unrealengine.com/5.0/en-US/API/Runtime/Engine/Engine/UAssetUserData/

The information in these Structs is also stored in the objects as Tags. This allows fallback settings to be created if that is all that is found.

The Blueprint Only Blueprints for Randomization are purely based on Tags, so this allows both sets of Blueprints to work with each other.

If any item doesn’t require any randomization then these settings are not created, and the same for the Tags, they are not created when they are just their default values.

Note that the AActor itself does not have the AssetUserData, the method provided that accepts the AActor pointer looks at that Actors RootComponent.

static UrdInstAssetUserData* GetInstUserData(UStaticMesh* mesh,bool make);
static UrdRandomizeAssetUserData* GetRandomizeUserData(AActor* actor,bool make);
static UrdRandomizeAssetUserData* GetRandomizeUserData(UActorComponent* actor,bool make);
static UrdTransformAssetUserData* GetTransformUserData(UActorComponent* actor,bool make);

These methods are used by the ArdActors themselves, you probably won’t even need to know this side of it exists. (just how to add them and edit them, see the Reference Manual for that).