在changstate(NAME_Spectating)以后,viewtarget为playercontroller,导致spectator的rotation为controller控制,无法根据自己的想法去修改,也无法使spectator作为其他actor的child一起旋转。
修改viewtarget从controller更改为spectator,重写controller的OnRep_Pawn方法:
void AFSPlayerController::OnRep_Pawn() { Super::OnRep_Pawn(); if (GetStateName() == NAME_Spectating) { AutoManageActiveCameraTarget(GetSpectatorPawn()); } }
即可解决此问题