FHitResult* OutSweepHitResult = nullptr

UFUNCTION(BlueprintCallable, Category = “Utilities|Transformation”, meta = (DisplayName = “AddLocalRotationQuat”, AdvancedDisplay = “bSweep,SweepHitResult,bTeleport”))
void AddLocalRotationQuat(const FQuat& DeltaRotation, bool bSweep = false, FHitResult* OutSweepHitResult = nullptr, ETeleportType Teleport = ETeleportType::None);

im getting the following error 2> Inappropriate ‘*’ on variable of type ‘FHitResult’, cannot have an exposed pointer to this type.

I must be missing something because this seems to be used within the core engine also?

Hello,

In fact, the engine uses an other function for the node :

UFUNCTION(BlueprintCallable, meta=(DisplayName = "SetActorLocation", Keywords="position"), Category="Utilities|Transformation")
bool K2_SetActorLocation(FVector NewLocation, bool bSweep, FHitResult& SweepHitResult, bool bTeleport);

To expand on this answer, when writing functions meant for blueprint use and you need to pass something by reference, you have to use the reference operator(&) and not the pointer operator (*).

1 Like