一、背景及解决办法
将Character拖入场景中,可以通过AddMovementInput进行移动,但是当通过代码动态Spawn一个Character,通过AddMovementInput进行移动,Character没反应。
FString BpPath = "Blueprint'/Game/MedievalGirl/Character/CharacterWithoutCamera.CharacterWithoutCamera_C'";
UClass* Clazz = LoadClass<AActor>(nullptr, *BpPath);
if (Clazz)
{
AActor* Actor = GWorld->GetCurrentLevel()->GetWorld()->SpawnActor(Clazz);
}
解决办法,Character的CharacterMovement组件的RunPhysicsWithNoController属性设置为true
二、CharacterMovementComponent执行流程
1、执行TickComponent,然后跳转到ControlledCharacterMove