언리얼
블루프린트의 형변환
공대녀J
2022. 12. 2. 13:24
블루프린트에서의 형변환은,
보통 c에서의 형변환과 동일하다고 생각하면 안된다.
사용 중인 자료형을 특정 자료형으로 casting하는 것과 더불어,
형변환을 하려는 자료형과 대상 자료형이 같은지 검사하는 기능이 포함되어 있기 때문이다.
언리얼에서는 Actor - Pawn - Character로 상속관계를 갖고 있다.
Actor는 레벨에 배치할 수 있는 오브젝트 전체를 가리키고,
Pawn은 AI나 컨트롤러를 통해 컨트롤할 수 있는 오브젝트,
Character는 Pawn의 기능과 더불어 더 복잡한 기능이나 애니메이션을 수행할 수 있는 액터를 의미한다.
아래 그림처럼,
액터 오브젝트를 부모 클래스가 Character인 BP_Communication_Character로 형변환하게 되면,
트리거에 오버랩 된 액터 오브젝트가
BP_Communication_Character에 down casting(부모 클래스 타입이 자식 클래스 타입으로 형변환)될 수 있는 지
체크하는 기능까지 포함되어 있다.
C++의 형변환을 보면 dynamic_cast<클래스 명>(객체); 가 있는 데,
언리얼에서는 dynamic_cast를 수행해주는 듯 하다.