액터를 만들어서 액터의 함수를 사용할려고한다
그 액터의 PROPERTY를 다르게 하여 똑같은C++을 부모로 상속하지만
다른값을 들고있다
Iterator로 만약 함수를 들고올려면 무조건 첫번째 액터만 기능케한다
해당코드처럼 iterator를 사용하여 함수를 호출하게되면
객체가 여러개가되면 개별적으로 정상작동을 하지않게된다
특정객체를 딱 참조해서 property에 할당시킨뒤 iterator에 한개만 찾고
그 찾은 객체를 지칭시키면된다
iterator를 찾을곳의 .h에 선언후
UPROPERTY(EditAnywhere, Category="MySettings")
TSubclassOf<ATeleporterCristal> cristal;
ATeleporterCristal* cristalInstance;
크리스탈 인스턴스와 iterator를 같게해주고
iterator로 한개만 찾고 break
그뒤 함수로 호출하면된다
for (TActorIterator<ATeleporterCristal>it(GetWorld()); it; ++it)
{
if (it->IsA(cristal))
{
cristalInstance = Cast<ATeleporterCristal>(*it);
break;
}
}
if (cristalInstance)
{
cristalInstance->LevelMove();
}
'Unreal 디버깅' 카테고리의 다른 글
상수에 줄 바꿈 문자가 있습니다 (한글깨짐) 오류 해결하기 (0) | 2025.05.24 |
---|---|
플레이어를 바라보는 모션워핑 버그수정 (0) | 2025.05.18 |
Unreal - 텍스처 스트리밍 풀이 예산을 초과했습니다 에러 고치기 (0) | 2025.05.15 |
BehaviorTree의 currentTime 디버깅 (0) | 2025.05.09 |
Unreal - 이동중 낑김현상 sweep부분 (1) | 2025.04.25 |