Creating a UObject in a Construction Script

Hello RecourseDesign,

Could you provide an example of how I might use that struct in creating an Object? I know its a param in spawning an actor.

My actor’s construction script:

AItemActor::AItemActor()
{
	PrimaryActorTick.bCanEverTick = false;
	bReplicates = true;
	bReplicateUsingRegisteredSubObjectList = true;

	//Create Static Mesh for the Item Actor
	StaticMesh = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("Default Static Mesh"));

	ItemData = NewObject<UItemObject>(this, TEXT("ItemData"), RF_NoFlags, ItemClassTemplate);

	if (ItemData)
	{
		auto StaticMeshAsset = ConstructorHelpers::FObjectFinder<UStaticMesh>(*ItemData->ActorStaticMesh.ToSoftObjectPath().ToString());
		if (StaticMeshAsset.Object) StaticMesh->SetStaticMesh(StaticMeshAsset.Object);

		//Set all materials of static mesh with the supplied array from ItemObj
		for (size_t i = 0; i < StaticMesh->GetNumMaterials(); i++)
		{
			StaticMesh->SetMaterial(i, LoadObject<UMaterialInterface>(NULL, *ItemData->ActorStaticMeshMaterials[i].ToString(), NULL, LOAD_None, NULL));
		}
	}
}