이것에 대해 몇 가지 생각하는 방법이 있습니다. 하나는 엔진이 가지고 있어야하는 특정 기능을 나열하는 것입니다 (여기에서 요청한 내용). 다른 방법은 "엔진"에 대해 너무 걱정하지 않고 게임을 시작한 다음 여러 기능 사이에서 재사용되는 기능을 재사용하는 것입니다 게임 (특히 모든 게임 에서 사용되는 기능 )은 특정 게임의 소스에서 "engine"이라는 공유 코드베이스로 마이그레이션해야합니다.
결국 게임이 아닌 엔진에서 특정 기능을 원하는 이유는 여러 게임간에 공유되기 때문입니다. 일반적으로 이는 드로잉 명령, 입력 컨트롤러 및 네트워킹 코드와 같은 것입니다. 2D 게임 엔진에는 이미지로드, z 순서의 디스플레이 계층 구조, 스프라이트 시트 처리, 트위닝 등과 같은 2D 그래픽 기능이 많이 있습니다. 반면에 많은 게임에는 물리 시뮬레이션이 필요합니다. 그 동안 거의 모든 게임에서 사용되는 "언더 후드"항목에는 타이머, 이벤트 메시징 및 게임 개발 고유의 수학 함수 (예 : distanceToTarget ()
긴 이야기 요약 :
A) 엔진에는 대부분의 게임에서 공유하는 기능이 있어야합니다.
B) 많은 게임을 만들어 어떤 기능을 공유하는지 배웁니다.
just start making games without worrying too much about the "engine"