게임 엔진 (game engine)
한 줄 정의: 렌더링·물리·입력·사운드 등 게임 제작에 필요한 공통 기능을 묶어 제공하는 소프트웨어 개발 환경입니다.
쉽게 풀면
게임을 만들 때마다 화면 그리기, 충돌 계산, 소리 재생 같은 기능을 처음부터 짜는 것은 비효율적입니다. 게임 엔진은 이런 공통 기능을 미리 만들어 두고, 개발자는 그 위에서 게임의 내용과 규칙을 만드는 데 집중하게 해 줍니다. 유니티(Unity)와 언리얼 엔진(Unreal Engine)이 대표적입니다.
왜 중요한가
상용 엔진의 보급은 소규모 개발팀과 인디 게임이 늘어난 중요한 배경으로 꼽혀 게임 산업·생산 구조 연구에서 자주 다뤄집니다. 최근에는 영상 제작의 버추얼 프로덕션, 건축 시각화 등 게임 밖 분야에서도 쓰이면서 콘텐츠 기술 연구의 주요 대상이 되었습니다.
논문에서는 이렇게 쓰입니다
"프로토타입은 유니티 게임 엔진으로 구현하였으며 실험 조건별 난이도 파라미터만 달리하여 빌드하였다."
실험용 게임을 어떤 도구로 만들었는지 밝히는 방법 절의 전형적 문장입니다.
"실시간 게임 엔진의 도입은 영상 제작 공정에서 사전 시각화와 본 촬영의 경계를 흐리게 만들었다."
게임 엔진이 다른 콘텐츠 산업에 미친 영향을 다룬 문장입니다.
조금 더 깊게 보면
게임 엔진은 보통 렌더링, 물리, 오디오, 애니메이션, 스크립팅, 네트워킹, 에디터 도구 같은 모듈로 구성됩니다. 자체 엔진을 쓰면 특정 게임에 최적화할 수 있지만 유지 비용이 크고, 상용 엔진을 쓰면 개발 속도가 빨라지는 대신 라이선스·수익 배분 조건에 의존하게 됩니다. 플랫폼 연구 관점에서는 엔진이 기본으로 제공하는 기능이 게임의 표현 방식과 장르 관습을 은연중에 규정한다는 분석도 있습니다.
주의할 점
기존 항목 게임 물리 시뮬레이션은 엔진 안의 한 기능 영역이고, 게임 엔진은 그런 기능들을 통합한 개발 환경 전체입니다. 추천 엔진이나 검색 엔진 같은 다른 '엔진'과는 다른 개념입니다.