03/12 TIL

김재혁·2025년 3월 12일

일정

  • 언리얼 강의 듣기
  • 채팅 서버 만들어보기

채팅 서버 만들어보기

예시 자료에서는 Widget이라는 변수를 그냥 Object 타입으로 만들어서 Cast를 해서 사용하는데 굳이 왜 그랬을까 해서 어떤 차이점이 있는지 찾아봄

Object 타입

  • Object Object Reference 타입으로 언리얼 최상위 클래스인 UObject를 가리키는 타입.
  • 어떤 오브젝트든 저장할 수 있으나, 특정 기능을 사용하려면 Cast해야함.
  • 액터, 컴포넌트 등도 지정 가능해서 범용성이 높음.

예제와 같이 하나의 Widget을 쓰는 경우에는 User Widget 또는 Widget_ChatWindow로 지정을 하면 Cast를 할 필요가 없어짐.

Get All Widget Of Class에서 Widget Class를 지정해줬기 때문에 이렇게 연결을 해도 정상적으로 작동.
하지만 보통 게임에서는 하나의 위젯만 사용하는 것이 아니기 때문에 어떤식으로 사용을 해야할지 찾아봄.

Object 사용

  • 위젯을 사용하는건 UserWidget타입이여도 거의 다 호환되므로 굳이 쓸 필요 없을 듯.

UserWidget 사용

  • 기본적인 위젯은 바로 사용가능하지만 함수를 쓰려면 Cast필요

변수 만들기

  • 각각의 위젯 타입으로 변수를 만들어주는 방식으로 Cast를 할 필요없지만 변수를 하나하나 만들어줘야함

UserWidget을 사용해서 함수를 쓸때 Cast를 해주는 방식이 가장 편하고 유연한 방법인듯.

0개의 댓글