게임엔진이란?
- 게임 엔진은 종합적인 컴퓨터 소프트웨어 시스템을 보다 손쉽게 개발할 수 있도록 도와주는 개발 툴
- 게임엔진의 구성요소는 3D 그래픽을 위한 렌더링 시스템, 공간상의 충돌 감지, 현실적인 물리 효과를위한 물리 시스템, 정해진 절차를 지시하기 위한 스크립트 에디터, 게임의 가상공간을 만들기 위한 맵 에디터, 각종 개발 도구
게임엔진의 역할
- 게임 제작을 위해서 필요한 핵심적인 성능을 발휘해 주도록 모아진 라이브러리의 모음
- 게임 세계의 데이터를 관리하고 그 데이터를 화면에 렌더링 하는 일
- 라이브러리 이외에도 개발을 지원하기 위한 여러 가지 툴과 스크립트 등을 내장
게임 엔진의 기능
- 렌더링
- 가시성 관리
- 실세계 시뮬레이션(충돌처리, 물리)
- 캐릭터 지원(모습, 움직임, 행위 및 의사 결정
게임 엔진의 구성
- 렌더링
- 물리
- 인공지능
- 사운드
- 맵 에디터, 씬 그래프 에디터와 같은 툴
렌더링이란?
3차원상의 물체에 대한 기하학적 정보를 이용하여, 이를 2차원 스크린상의 이미지로 변환하는 것
렌더링 엔진이란?
렌더링 과정을 효과적으로 처리할 수 있는 엔진
렌더링 엔진의 구성
OpenGL또는 Direct3D와 같은 Low-Level 3D API를 이용하여 렌더링 엔징이 구성됨
렌더링 엔진의 필요성
일반인이 그래픽 API를 이용하는 것은 상당히 어렵다
따라서 Scene graph API라고 불리는 High-Level API를 통해 일반 사용자들이 비교적 쉽게 렌더링 할 수 있다.
유니티 인터페이스
유니티는 비주얼 툴이므로 프로그래밍 못지 않게 틀을 능숙하게 다루어야 함
뷰
Project뷰
Project Browser라고도 한다.
게임을 만들 때 필요한 모든 에셋을 모아 두는 곳
※에셋이란?
3D 모델링 오브젝트, 이미지 파일, C#파일, 사운드등의 리소스
Scene뷰
씬 뷰는 3차원 모델링등을 배치하여 스테이지를 디자인 하는 장소이다.
Hierarchy뷰
씬 뷰에 배치한 모든 객체들을 계층 구조로 나열해서 보여준다.
Inspector뷰
Scene뷰 또는 Hierarchy뷰에 선택된 게임 오브젝트의 속성을 보여주는 뷰
Game뷰
개발 진행 중에 게임을 실행해 미리 볼 수 있다.
Scene뷰에 설치된 메인 카메라의 시야로 렌더링 해서 보여준다.
Console뷰
디버깅 시 로그를 출력하는 뷰로서, 정보, 경고, 오류로 분류하여 메세지를 필터링 해서 보여준다.
'학교 수업 > 게임프로그래밍' 카테고리의 다른 글
게임프로그래밍(2) 기말고사 정리 (2) | 2022.12.06 |
---|---|
게임 프로그래밍(2) 중간고사 정리 (0) | 2022.10.19 |
게임프로그래밍 기말고사 정리 (0) | 2022.06.08 |
게임 프로그래밍(1) 중간 정리 (0) | 2022.04.26 |