[UE 4]C++コードで青写真のMoveComponentTo機能を実現
988 ワード
例:StaticMeshComponentタイプの弾丸を移動する
MoveComponentTo実行プロセスの時間長を設定できるため(たとえば、物体が瞬時に移動しないようにするのではなく、スムーズに移動したり転向したりするプロセスがある場合は、その時間パラメータを設定します)、実行を完了してから関数をコールバックして実行し、次のコールバックの関数名を設定し、プロセスが一時停止していない場合はLinkageを0に設定する必要があります.たとえば
実行後にコールバック関数が不要な場合は、ActionInfoを設定する必要がある.CallbackTarget = this;すぐ
注意:ここでコールバック関数TestCallはBlueprintCallableタイプと明記します.
APIドキュメント:
https://docs.unrealengine.com/latest/INT/API/Runtime/Engine/Kismet/UKismetSystemLibrary/MoveComponentTo/index.html
void AHGameMode::TransfromCamera()
{
FLatentActionInfo ActionInfo;
ActionInfo.CallbackTarget = this;
UKismetSystemLibrary::MoveComponentTo(SelectedHero->GetSpringArm(), FVector(0.f, 0.f, 2000.f), FRotator(-80.f, 0.f, 0.f), false, false, 1.0f, EMoveComponentAction::Move, ActionInfo);
}
MoveComponentTo実行プロセスの時間長を設定できるため(たとえば、物体が瞬時に移動しないようにするのではなく、スムーズに移動したり転向したりするプロセスがある場合は、その時間パラメータを設定します)、実行を完了してから関数をコールバックして実行し、次のコールバックの関数名を設定し、プロセスが一時停止していない場合はLinkageを0に設定する必要があります.たとえば
FLatentActionInfo.ExecutionFunction = "TestCall";
FLatentActionInfo.Linkage= 0;
実行後にコールバック関数が不要な場合は、ActionInfoを設定する必要がある.CallbackTarget = this;すぐ
注意:ここでコールバック関数TestCallはBlueprintCallableタイプと明記します.
APIドキュメント:
https://docs.unrealengine.com/latest/INT/API/Runtime/Engine/Kismet/UKismetSystemLibrary/MoveComponentTo/index.html