게임엔진
게임 제작에 필요한 라이브러리들의 모음
그래픽, 물리, 사운드, 네트워크, ..
게임엔진의 종류
언리얼, 유니티, 코코스(모두의마블), 하복-비전, 게임브리어오(와우), 렌더웨어, ...
일리히트, 쯔꾸르, 프라우드넷(서버엔진), 자체엔진(검은사막, 플레이오네 등..)
게임엔진의 흐름
자체엔진 → 상용엔진 → 멀티플랫폼 상용엔진
자체엔진을 알면 상용엔진이 쉬워진다.
모델, 애니메이션, 렌더링, 지형, 씬관리, AI, 물리 등
회사에서의 엔진선택
게임의 컨셉, 개발비용, 개발자에 따라 다름
* 유니티 - 중퀄, 캐주얼, 적은 인력, 저비용
* 언리얼 - 고퀄, MMO, 많은 인력, 고비용
* cocos2dx - 2D게임, 무료
* 자체엔진 - 열정, 자부심, 다양성, 개발피드백
자체엔진
* 플랫폼은 어디로 할것인가?
- windows, IOS, Android
- DirectX, OpenGL, OpenGL-ES(OpenGL의 무거운 함수들이 없는 경량화버전. iOS, Android)
- 2D, 3D, Tool
* 어떤 라이브러리를 사용할 것인가?
- 모델, 애니메이션, 사운드, UI, 지형, 물리, AI
- 파티클, 길찾기, 패킹, 데이터 익스포터
* 플랫폼 종속성은 어떻게?
- 가상화(virtual) 통해서 해결 → 코드 종속적인 플랫폼별 cpp파일로 각각 로딩
- 결과적으로 엔진 로직만 공유 → 플랫폼별 중복 코딩은 변함없다. 작업량 많음
- 각각의 라이브러리를 제작
→ singleton, static, global
→ 모델, 씬, 렌더, 파티클, UI, 터레인 매니저
자체엔진과 상용엔진의 비교
- 플랫폼, 렌더러 측면에서의 차이? 없음. 같은도구(DX, GL) 사용
- 기능
→ 상용 : 원하는 기능 거의 다 있다.
→ 자체 : 원하는 기능 직접 구현
- UX, UI는 열악한 편
- 개발자 숙련도. 개발자도 모르는 기능이? 엔진개발자가 갑자기 퇴사하면?
- 데이터 재활용성, 최적화
엔진 분석하기
- 도움말 문서
- 튜토리얼
- 기존 라이브러리에 대한 지식
→ 모델, 애니메이션, 파티클, UI 등
→ DX, GL 등의 Core API에 대한 이해
- 엔진이 지원하지 않는 경계를 알아가는 과정
'프로그래밍 공부 > 특강' 카테고리의 다른 글
포폴 면접 취업준비 (0) | 2018.12.04 |
---|---|
면접과 수습에서 살아남기 (0) | 2018.12.04 |
서버 프로그래머에 관한 이야기 (0) | 2018.12.03 |
BIC 컨퍼런스 오후 세션 (0) | 2018.10.06 |
BIC 컨퍼런스 오전 세션 (0) | 2018.10.06 |