[Unreal] 이득우 Part 1. 4강 언리얼 오브젝트 기초

Kim Dongil·2024년 3월 16일
0

언리얼엔진

목록 보기
8/18

게임 프로그래밍의 특수성

  • 사용자 : 쾌적한 경험을 위해 단일 컴퓨터에서 최대 성능을 뽑아내야 한다.
  • 개발자 : 게임 규모가 커질수록 방대하고 복잡한 기능을 안정적으로 관리해야 한다.

언리얼 엔진의 선택

  • 성능을 위해 기존 C++ 언어를 포기할 수 없다.
  • 기존 C++ 언어를 확장해 모던 객체 지향 설계를 가능하도록 만듬.
  • 모던 객체 지향 설계를 위한 새로운 시스템을 구축

언리얼 오브젝트

언리얼엔진 오브젝트

  • 언리얼 엔진이 설계한 새로운 시스템의 단위 오브젝트
    • 기존 C++ 오브젝트에 모던 객체 지향 설계를 위한 다양한 기능을 추가한 오브젝트
    • 일반 C++ 오브젝트와 언리얼 오브젝트 두 객체를 모두 사용 가능
    • 구분을 위해 일반 C++ 오브젝트는 F, 언리얼 오브젝트는 접두사 U를 사용
  • 각 오브젝트의 사용 용도
    • C++ 오브젝트 : 저 수준의 빠른 처리를 위한 기능 구현에 사용

    • 언리얼 오브젝트 : 콘텐츠 제작에 관련된 복잡한 설계 구현에 사용

UCLASS 매크로

언리얼 오브젝트는 앞서 말했듯이 게임 오브젝트 처리용으로 탄탄한 시스템이다. 언리얼 오브젝트의 베이스 클래스는 UObject로 파생되는 클래스에 UCLASS 매크로를 사용하면 UObject 처리 시스템에서 인식하게 된다.

정리

  • 게임이 대형화되면서 성능과 유지보수 두 가지 모두 중요해짐.
  • 언리얼 엔진은 C++ 언어를 확장한 언리얼 오브젝트라는 객체 구조를 고안함
  • 지정된 매크로를 사용해 빌드를 수행하면, 추가 코드가 자동으로 만들어지는 구조를 가짐.
  • 언리얼 오브젝트를 사용해 대규모 게임 제작을 안정적으로 설계하고 구현할 수 있음.

0개의 댓글