![게임 엔진 (Game Engine)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbAyjr5%2FbtsFuL27zgD%2FPz5lkAhKppj98RRExiIvm1%2Fimg.jpg)
![HYUNJZZANG](https://tistory1.daumcdn.net/tistory/3136792/skin/images/main_img.gif)
★KEYWORD★
상호작용 프로그램 구현 / 소프트웨어 구성요소 / 게임 개발 소프트웨어 / 상용화된 엔진 / 유니티 / 언리얼 / 자체 엔진개발
게임 엔진(영어: game engine)은 비디오 게임 같은 실시간 그래픽 표시 기능을 갖춘 상호 작용 응용 프로그램을 구현하는 핵심 소프트웨어 구성 요소를 말한다. 컴퓨터 게임 개발에 바탕이 되는 기술을 제공하여 개발 과정을 단축시켜 줄 뿐 아니라, 게임을 다양한 플랫폼에서 실행할 수 있게 해주기도 한다. 특히 게임 엔진은 재사용을 염두에 두고 있기 때문에, 하나의 게임에 종속되지 않고 여러 종류의 게임에 쓰일 수 있도록 개발된다.
비디오 게임, PC 게임의 개발에 기반이 되는 구성 요소들을 가진 필수 구성 요소들인 그래픽 엔진, 물리 엔진, 오디오 엔진, UI 시스템, 게임 플레이 프레임워크 등이 잘 융합된 상태의 소스 코드와 그 기능들을 디자이너들이 사용 가능한 툴을 겸비한 게임 개발 소프트웨어를 일컫는 말이다.
게임 회사에서 게임을 개발하고자 할 때, 가장 먼저 결정하는 건 상용화되어있는 게임 엔진을 사용할 것인지, 개발사에서 자체적으로 개발한 게임엔진을 사용할 것인지를 결정하게 된다.
상용화된 엔진(이미 만들어져 있는 게임 엔진)을 사용할 시 장점
3D 게임의 구동을 위한 렌더링 등의 다양한 기능이 이미 구현돼, 개발 기간을 단축할 수 있다.
상용화된 엔진을 사용할 시 단점
개발할 게임과 상성이 맞지 않을 경우 역효과가 날 수도 있다. 리얼이나 유니티 같은 상용 엔진을 사용 하면 일정 수익 이상부터는 전체 수익의 일정 비율을 로열티로 지불하거나, 로열티 지불을 하지 않기 위해서 억 단위의 커스텀 라이센스 비용을 지불(매출이 수십억 단위로 발생하는 게임들의 경우) 계약하기도 한다.
대표적인 상용 엔진
1. 유니티
-다양한 플랫폼을 지원한다. 개발자는 모바일 기기, 웹브라우저, 데스크톱, 콘솔 구분 없이 원하는 형태의 게임을 쉽게 만들 수 있다.
-개발 환경 자체도 입문자가 쉽게 이해할 수 있을 만큼 직관적이고 간단하게 구성되어 있다.
2. 언리얼 엔진
-탄탄한 성능과 렌더링, 그래픽 등의 성능도 탄탄하게 구성되어 있다.
-'블루프린트'라는 기능이 존재해 코딩에 대한 높은 지식 없이도 게임을 설계할 수 있다.
3. 스노드롭 엔진
4. 토크 게임 엔진
5. 게임브리오
6. 크라이엔진
7. Cocos 2D-X ... 등등
자체 개발 엔진을 사용할 시 장점
수익과 생산성이 좋다. 만들고자 하는 게임이 독특하면 독특 할 수록, 많은 기능 추가와 개조를 할 수 있기에 자체 개발이 큰 장점이 된다. 또한 상용 엔지을 사용하여 로열티 지불해야한다는 단점도 사라진다.
대표적인 엔진 기능
▶미들웨어: 여러 응용소프트웨어와 여러 운영체제 사이를 중개하는 기능으로, 응용 소프트웨어의 관리 콘솔, 인터페이스, 데이터베이스, 모니터링 기능 등으로 구성된다.
▶ 물리 엔진
▶ 그래픽 렌더링 엔진
▶ 애니메이션 처리
▶ 쓰레드
▶ 스크립트 작성
▶ 애니메이션 엔진
▶ 사운드 엔진
▶ 게임 인공지능
▶ 게임 네트워크
▶ 메모리 관리
출처: 위키백과, 나무위키
![HYUNJZZANG](https://tistory1.daumcdn.net/tistory/3136792/skin/images/main_img.gif)
HyunZzang의 프로그래밍 공간 / 함께 공부해요!!
도움이 되셨다면 "좋아요❤️" 또는 "구독👍🏻" 부탁드립니다 :)