If set, this hover function will be passed to UTransformGizmo instances to use instead of the default. Hover is complicated for UTransformGizmo because all it knows about the different gizmo scene elements is that they are UPrimitiveComponent (coming from the ATransformGizmoActor). The default hover function implementation is to try casting to UGizmoBaseComponent and calling ::UpdateHoverState(). If you are using different Components that do not subclass UGizmoBaseComponent, and you want hover to work, you will need to provide a different hover update function.