본문 바로가기

공부/이득우의 언리얼 프로그래밍

[Study] Part 1 - 언리얼 오브젝트 소개 (4/15)

728x90
반응형

 

 

 

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

 

 

 

 

 

 

 

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

 

 

언어별 차이

 

 

 

 

 

  • 언리얼 오브젝트
    • 언리얼 엔진이 설계한 새로운 시스템의 단위 오브젝트(객체)
      • 기존 C++ 오브젝트에 모던 객체 지향 설계를 위한 다양한 기능을 추가한 오브젝트
      • 일반 C++ 오브젝트와 언리얼 오브젝트의 두 객체를 모두 사용할 수 있음
      • 구분을 위해 일반 C++오브젝트는 F, 언리얼 오브젝트는 접두사 U를 사용함
    • 각 오브젝트의 사용 용도
      • C++ 오브젝트
        • 저수준의 빠른 처리를 위한 기능 구현에 사용
      • 언리얼 오브젝트
        • 콘텐츠 제작에 관련된 복잡한 설계 구현에 사용

 

 

 

 

  • 언리얼 오브젝트가 가지는 특징
    • 클래스 기본 객체(CDO)
      • 클래스의 기본값과 타입 정보의 제공
    • 리플렉션(Reflection)
      • 런타임에서 클래스 정보의 참조 기능
    • 인터페이스(Interface)
      • 모던 객체 지향 언어가 제공하는 인터페이스의 제공
    • 향상된 열거형
      • 보다 향상된 열거형의 지원
    • 델리게이트(Deligate)
      • 객체간의 결합을 낮출 수 있는 델리게이트 기능의 제공
    • 가비지컬렉션(Garbage Collection)
      • 자동 메모리 관리
    • 향상된 구조체(Struct)
      • 리플렉션이 가능한 구조체의 지원
    • 직렬화(Serialization)
      • 객체 정보를 바이트 스트림으로 저장, 전송, 불러들이는 기능

 

 

 

 

 

 

 

 

 

해당 포스트는 인프런의 <이득우의 언리얼 프로그래밍 Part1 - 언리얼 C++의 이해>
강의를 수강하고 정리한 내용입니다.
 

이득우의 언리얼 프로그래밍 Part1 - 언리얼 C++의 이해 | 이득우 - 인프런

이득우 | 대기업 현업자들이 수강하는 언리얼 C++ 프로그래밍 전문 과정입니다. 언리얼 엔진 프로그래머라면 게임 개발전에 반드시 알아야 하는 언리얼 C++ 기초에 대해 알려드립니다., [사진] 언......

www.inflearn.com

 

 

 

 

728x90