I am trying to use a custom event in my BPPlayerController
to add Yaw rotation to owning Pawn. The event is implemented in the parent C++ class as a UFUNCTION(BlueprintImplementableEvent, Category = "Controls")
and is being called on every Tick in the parent. The Pawn just reads Get Control Rotation
and sets it to SetActorRotation
on every Tick.
In the BPPlayerController
I connect the custom event to AddYawInput
with forced value of 1
(times the default yaw scale) and then to a generic print. The print does print text onto the viewport, but the object doesn’t rotate.
If instead of the custom event I connect the InputAxis event (defined in project input settings as usually) the object rotates and the print prints.
For now as a solution I can just use the InputAxis Exec pin (which is being called internally) to execute the sequence and the event value as rotation amount. However, this solution is very “dirty” solution.
Does anyone know what is different between the standard “input event” and the custom event? What might cause the AddYawInput
to not respond to custom events?
What perplexes me even more is that Add Movement input
works perfectly with another custom event. Even when i connect my rotate event to this node. The only implementation difference is in the Pawn where is first ConsumeMovementInputVector
and then AddActorWorldOffset
.
Here is my “dirty” solution in the BP controller: