언리얼

블루프린트의 형변환

공대녀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를 수행해주는 듯 하다.