WinCNT

언리얼 소개 및 블루 프린트 본문

게임 프로그래밍(학습 내용 정리)/Unreal

언리얼 소개 및 블루 프린트

WinCNT_SSS 2021. 12. 9. 19:51

언리얼 엔진 소개 요약

  • 툴(임포터,에디터)과 프레임 워크를 제공한다
  • 외부리소스를 임포트하고 에디터를 이용하여 엔진 데이터를 생성
  • 프레임 워크에서 발생하는 이벤트를 처리한다
  • 게임 플레이 구현에 유연함이 필요하다면 블루프린트를 사용한다
  • 레벨 블루프린트 , 클래스 블루프린트가 존재한다. 
  • 블루프린트는 실시간 가상머신으로 번역되므로 비용이 발생한다
  • 블루프린트는 게임플레이 관점에서 엔진을 이해하는 쉬운방법이다

게임 엔진의 정의

게임 개발 제작 노하우를 게임컨텐츠와 구현기술을 분리하여 또 다른 게임 제작을 용이하게 하는 도구(Toolset) 와 기능(Framework) 모음 

언리얼 엔진의 도구 (Toolset)

엔진의 기능(Frameword)

엔진에서 작업한 데이터랑 게임 플레이 관련된 스크립트 내용

게임 엔진은 물리,렌더링,입력,네트워크,게임플레이 통합한 기본 루프를 제공한다

엔진 사용자가 집중해야 할 부분은 엔진에서 정의 하는 개념일어나는 이벤트의 종류와 이벤트가 전달하는 정보

 

블루 프린트

  • 공학 설계를 문서화한 기술 도면
  • 언리얼 엔진에서는 오브젝트레벨의 설계(데이터, 로직)를 나타내는 스크립트 데이터를 의미
  • 저장된 데이터는 실시간으로 엔진 내부 Virtual Machine에서 번역, 최종 Native C++에 해당되는 명령이 호출

스크립트의 정의

정적인 프로그램에서 기능을 확장하기 위해 사용하는 언어

비주얼 스크립트

언리얼 엔진의 블루 프린트의 예

  • 텍스트 기반의 작성이 아닌 노드 기반 인터페이스로 작성
  • 노드(함수)의 실행 흐름과 입출력 지정을 마우스로 선을 연결하여 작업

블루프린트 비주얼 스크립팅

언리얼 에디터 안에서 노드 기반 인터페이스를 사용하여 게임플레이 요소를 만드는 개념

게임플레이 관점에서 언리얼 엔진을 이해하는 가장 쉬운 방법 

( C++에서 키워드 사용으로 노출된 함수가 BP노드가 되므로 완전 별개의 로직이 아님

디자이너 및 아티스트가 프로젝트에 기능을 추가하는 과정에 참여할 수 있도록 합니다.

성능보다는 빈번하게 변경될 여지가 있는 곳에 사용하는 것은 유용하다

블루프린트 기능과 한계

새로운 게임 오브젝트(클래스,액터)를 정의하는 블루프린트 클래스,

또는 레벨 블루프린트에서  함수, 변수, 이벤트처리, 함수 재정의(클래스만 해당)를 작성

(C++에서 키워드로 노출시킨 클래스,변수,함수를 노드로 사용 할 수 있음)

프로젝트에 Script가 필수는 아니지만 유연함을 제공한다

 

에디터에서 빌드

사전에 미리 계산할 수 있는 것은 데이터 타입으로 미리 만들어 둠

(static 액터의 그림자 등등)

결론

Scrpit가 필수는 아니지만 유연함을 제공한다

물론 케이스 by 케이스이므로 회사 정책에 따르십시오 휴먼

 

SSS

'게임 프로그래밍(학습 내용 정리) > Unreal' 카테고리의 다른 글

GUI - UMG(UnrealMotionGraphics)  (0) 2022.01.20
액터 통신  (0) 2022.01.13
캐릭터 셋업  (0) 2022.01.06
제 3강. 컬리전 시스템  (0) 2021.12.30
GamePlay Framework  (0) 2021.12.16