728x90
반응형
여러 액터들을 저장한 액터 배열이 있을 때, 한 지점을 기준으로 이 지점과 가장 근접한 액터를 가져와 보자.
이는 액터 배열을 순회하며 거리를 모두 계산한 후, 가장 짧은 거리의 액터를 반환하면 된다.
이를 구현한 함수로, UGameplayStatics::FindNearestActor 함수를 사용해 보자.
// .h
private:
// 구현할 함수
AActor* GetNearestTargetFromAvailableActors(const TArray<AActor*>& InVailableActors);
// 가장 근접한 액터 변수
UPROPERTY()
AActor* NearestActor
// 검사할 액터 배열
UPROPERTY()
TArray<AActor*> AvailableActors;
UGameplayStatics::FindNearestActor()
- "Kismet/GameplayStatics.h" 헤더 추가
- 기준 위치 (FVector)
- 검사할 액터 배열
- 참조 저장할 가장 근접한 액터와의 거리 (float)
// .cpp
#include "Kismet/GameplayStatics.h"
AActor* ATest::GetNearestTargetFromAvailableActors(const TArray<AActor*>& InVailableActors)
{
// 가장 근접한 액터와의 거리
float ClosestDistance = 0.f;
return UGameplayStatics::FindNearestActor(GetActorLocation(), InVailableActors, ClosestDistance);
}
728x90
반응형
'📘Unreal Engine > 📝Unreal Engine' 카테고리의 다른 글
| [Unreal engine] ExposeOnSpawn 메타데이터 지정자 (0) | 2024.11.19 |
|---|---|
| [Unreal Engine] 오브젝트의 위치를 기준으로 위젯 위치 구하기 (0) | 2024.11.11 |
| [Unreal Engine] 비헤이비어 트리(Behavior Tree) 구조 (0) | 2024.08.19 |
| [Unreal Engine] 충돌 판정 / 트레이싱 (Tracing) (0) | 2024.08.09 |
| [Unreal Engine] 강 참조와 약 참조 (Hard and Soft Reference) (0) | 2024.08.05 |