티스토리 뷰

저는 게임프로그래밍을 배우는 학교에 다니고 있습니다.
따라서 주변에 게임 프로그래밍을 하는 친구들, 후배들이 있습니다.
저희 학교에서는 왠지는 모르겠으나 DirectX를 많이 합니다.
그리고 이 DirectX는 엔진 개념이 아니라 라이브러리 개념인지라 사용자에게 더 친숙하고 편리한 그런 구조는 아닙니다.

저 역시 마찬가지였는데 게임을 만들다보면 자신에게 적합한 간단한 엔진 혹은 프레임워크를 제작하게 됩니다.
DirectX를 썼다고 앞에서 말씀드렸었는데 이 DirectX의 메소드들과 게임에 필요한 부분들을
필요할 때 쉽게 쓸 수 있도록 환경을 구성해두는 것이죠.

이러한 간단한 엔진 혹은 프레임워크를 만들다보면 친구들은 점점 더 '엔진 메이커'가 되어갑니다.
(모두 그렇다는 뜻은 아닙니다.)
그 친구들은 친구들 나름대로의 생각이 있겠지만 제 3자의 입장인 제가 봤을 때
원래의 목표인 게임 제작에서 점점 다른 목표인 게임 엔진 제작이 됩니다.

게임 엔진을 만드는 것에 대해 욕하려는 것이 아닙니다.
제가 하고 싶은 말은 게임 엔진을 만들 때 왜 만드는가에 대해서 생각해보면 어떻겠냐는 것입니다.

저는 앞에서 말한 간단한 엔진 혹은 프레임워크를 제작하는 것은 게임 프로그래밍의 기본 원리를 공부하기 위해서는
좋은 방법이라고 생각합니다. 자신만의 프레임워크를 만들면서 점점 더 게임 프로그래밍에 대해 익숙해지고 공부가 됩니다.

하지만 제 생각은 그냥 처음부터 엔진을 쓰는 것도 나쁘지 않다는 생각입니다.
엔진을 쓰면서도 충분히 게임 프로그래밍에 대해 많은 공부를 할 수 있고 현재 수 많은 좋은 엔진들이 무료로 제공되고 있습니다. (교육용)
이러한 엔진들을 쓰면 게임 개발을 할 때 좀 더 편리하게 좋은 성능의 게임 제작이 가능해집니다.
그렇다고 해서 개발능력이 떨어지는 것도 아닙니다.
엔진을 쓰면서도 수 많은 돌발상황과 삽질을 하게 됩니다.
그것이 엔진이 이상한 것이라 하는 삽질일 수도 있고, 원하는 것이 엔진 상에서 기본으로 제공하기 어려운 것이라 그럴 수도 있죠.
따라서 엔진을 쓰면서도 충분히 게임 프로그래밍을 공부할 수 있습니다.

즉, 제가 하고자 하는 말은 "처음 게임 개발을 하는 분들이라면 굳이 DirectX 같은 어려운 것을 익히면서 공부할 필요 없이
상용 게임 엔진을 이용하여 게임을 만들어 보는 것으로도 좋은 공부가 된다." 
입니다.

다음으로 이미 자신은 많은 공부가 되어 있어 실제로 게임 엔진을 개발해서 팔아봐야겠다 라는 생각을 갖고 있는 분들에게
여러 엔진들을 접해본 제가 드리는 말씀은
"정말로 자신이 훌륭한 실력을 갖추고 있고, 기존 엔진 유저들과 새로운 유저들을 잡을 아이디어가 없다면 하지말라."  입니다. 
다들 알고 계시는 것이지만 현재 많은 훌륭한 엔진들이 나와 있습니다.
매우 유명한 언리얼 엔진부터 시작하여 크라이엔진, Unity3D, Corona SDK ..... 등등 많은 엔진들이 있죠.
그런 엔진들과 경쟁하여 이길 수 없다면 시작하지 않는 것이 좋습니다.
설사 만든 엔진의 성능이 월등히 좋고 특출난 부분이 있다 하더라도 자신의 엔진을 쓰도록 하는건 쉽지 않을겁니다.
사람들은 기존 엔진 사용법과 IDE에 대해서 익숙하기 때문이죠.  

제가 너무 비관적인걸까요? 단지 제 생각일 뿐입니다만 정말 쉽지 않을겁니다. 
사실 새로운 게임 엔진 만드는 부분에 대해서는 원래 계획에 없던 내용입니다.
여러 사람들이 (특히 초보자) 게임 엔진을 만들겠다고 하는데 굳이 그럴 필요가 있나 하는 생각을 옛날부터 해왔었고
그것을 블로그에 포스팅하고 싶어서 이렇게 썼는데, 조금 연관이 되어 있는 부분을 더 썼더니 이런 글이 탄생해버렸네요.
글을 마치면서 갑자기 조금 우울해집니다.
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday