class reference 기반 spawn 플로우
Detail Pannel에서 [class reference]칸 만들기
- ADisPatcherChild를 상속하는 클래스 중 선택
-
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Dispatcher") TSubclassOf<ADisPatcherChild> ChildClass;
-
-
- 선택된 class의 객체 만들기
- [SpawnActorDeferred<AActor> 사용]
-
TempChild = GetWorld()->SpawnActorDeferred<AActor>(ChildClass, FTransform(TargetLoc), nullptr, nullptr, ESpawnActorCollisionHandlingMethod::AlwaysSpawn); TempChild->FinishSpawning(FTransform(TargetLoc));
- Cast는 따로 해줘야 함 ( return값은 AActor type )
-
- [SpawnActorDeferred<AActor> 사용]
좌표 변환
예시 :
TargetLoc = FScaleRotationTranslationMatrix(FVector(0, 0, 0), FRotator(0, 0, 0), FVector(0, 0, 0)).TransformPosition(TargetLoc);
-
(combine)(dependent)(select)FScaleMatrix.(FVector).TransformPosition(location)(FVector)Rotation(FRotator)Vector(direction)Translation(FVector)
function Override
- 필요한 argument들을 가진 method를 만든다. ( header & source ) ( copilot🧡 )
- [Component or Actor] → [Target function].AddDynamic( target instance, ref 위에서만든 method )
- BP에선 override function인데, 가상함수가 아님.. arguments입력시의 휴먼에러 대한 무결성을 보장해주지는 않는듯?
- 원하는 method를 특정 event에 matching시켜주는 형태 ( parameter는 수기입.. )
- 필요한 argument들을 가진 method를 만든다. ( header & source ) ( copilot🧡 )
- [Component or Actor] → [Target function].AddDynamic( target instance, ref 위에서만든 method )
- BP에선 override function인데, 가상함수가 아님.. arguments입력시의 휴먼에러 대한 무결성을 보장해주지는 않는듯?
- 원하는 method를 특정 event에 matching시켜주는 형태 ( parameter는 수기입.. )
코드에서 경로로 에셋 참조하기
'Unreal > UE Architecture' 카테고리의 다른 글
Unreal Interface (0) | 2024.06.16 |
---|---|
Gameplay Ability System (0) | 2024.06.13 |
문자열 처리 (0) | 2024.05.16 |
UE Macro & Reflection System (0) | 2024.05.16 |
Smart Pointer & Container & Serialize (0) | 2024.05.16 |