일전에 블로그 포스팅을 통해서 Amazon Q 를 소개한적 있다.
개인적으로는 해당 글을 쓴 이후에도 계속 월 19달라라는 엄청나게 저렴한 가격으로 계속 꿀을 빨고 있는데, 그 이후에 킬로라던지, 다양한 솔루션이 나왔음에도 불구하고 Q 사용법이 점점 익숙해지면서, 그 야말로 Q 와 함께 칼춤을 추고있다.
따라서 내가 멘토링을 하거나 강의를 하는 환경에서도 가급적 수강생들에게 이러한 AI 기반의 개발법을 경험해볼 수 있도록 환경을 세팅해주고 알려주고 있는데, 이를 활용하면 아이디어가 있는 초보자도 손쉽게 게임을 만들어 볼 수 있는 시대가 되고 있어서, 오늘은 “둠 스타일” 의 게임을 만드는 것에 대해서 간략하게 소개해보려 한다.
먼저, 이를 위해서는 Q 를 설치해야하는데, 월 19달라의 프로를 쓰면 거의 무한대에 가까운 사용이 가능하지만 ( 다만, 중간 중간 리밋이 걸려서 노하우가 좀 필요하긴 함. ) 무료로도 사용을 해볼 수 있으니 관련 내용을 영상으로 제작해놨으니 참조바란다.
자 이제 CLI 기반의 Q 를 사용할 수 있는 환경이 준비되었으면, 이제 “둠 스타일” 의 게임을 만들어봐야 한다.
그런데 여기서 “둠 스타일” 이란 무엇인가?
둠은 천재 게임 개발자로 지금도 활동을 하고 계시는 존 카멕 형님이 만드신 전설적인 1인칭 시점의 거의 최초의 FPS 게임이다.

둠에 대한 위키 문서
https://en.wikipedia.org/wiki/Doom_(franchise)
AI 코딩 사례를 찾아보면 심심치 않게 둠 스타일의 게임을 구현하는 것을 볼 수 있는데, 이것은 바로 둠이 2D 그래픽과 3D 그래픽의 기본적인 원리를 정말 잘 구현한 수작의 게임이었기 때문에, 웹 베이스로 게임을 구현할때 AI 를 활용하여 몰입감있는 3D 스타일의 게임을 구현해보기에 좋은 사례이기때문이다.
최근에는 Three.js 나 Babylon.js 등과 같은 웹기반 3D 솔루션들이 상당히 많이 나왔기 때문에 키워드만 잘 잡아주면 뚝딱 하고 웹베이스의 3D 게임들 예제를 만들어준다.
하지만 오늘은 그에 앞서서 그냥 단순한 무지성에 가까운 요청으로도 둠 스타일의 게임을 만들어주는지를 알아보기위해서 Q 에 명령을 해서 한번 만들어본다.
먼저, 이를 위해서는 그냥 “명령” 을 하면된다. 다만 폴더 지정은 제대로 하는 것이 좋다.

그리고 바이브 코딩 스타일대로 그냥 만들어달라고 해도 만들어주긴 하지만, 그래도 기본적인 방법은 제시를 해줘야 한다. 먼저 계획을 세워달라고 요청을 하자. 그럼 제법 그럴싸하게 계획을 세워준다.

위 내용을 바탕으로한다면, 먼저 구조를 만들어주고, 벽을 그려준다음에 플레이어와 오브젝트들을 레이캐스팅 방식으로 물리처리를 해서 3D 구조를 만들어준다는 방식인 것 같다.
꽤 그럴싸하게 들리니, 진행을 맡겨보자.
뭔가 괴랄한 결과물을 만들어주었다.

아마도 벽등을 렌더링 하는 기능들을 과감하게 스킵한 것으로 보인다. 과감한.. AI 자식.. 몇차례 다시 닥달을 하면 말귀를 알아듣고 수정을 해준다.
그 결과 꽤 그럴싸한 결과물이 나왔다.
나름 미니맵도 있고, 총구까지 만들어준 모습.

아쉽지만 별도의 3D 데이터들을 로드해서 사용하는 환경을 갖추지 않는한 기본적인 매쉬 렌더링만으로 이것보다 고퀄리티의 결과물을 얻긴 힘들다. 여러 요구조건을 통해서 이펙트나, 사운드, 텍스쳐등은 조금 더 추가할 수 있지만, 퀄리티를 올리기 위해서는 다른 형태의 연구가 필요해보인다.
어쨌든 채찍질(?) 을 계속 해서 얻은 최종 결과물

나름 게임처럼 돌아가긴 한다.
전체적인 제작 과정은 아래 영상을 보면 구체적인 내용이 나오니 한번 참조해보길 바란다.
이상으로 간단하게 둠스타일의 1인칭 웹 베이스 예제 게임을 뚝딱 만들어보았다.
사실 이건 게임 개발이라고 말할 순 없지만, 게임 개발의 기초 지식이 부족해서 시작을 어려워하시는 분들 혹은 게임 개발의 재미를 맛보고 싶은 분들은 이런 과정을 통해서 시작을 해봐도 좋을 것 같다.
추가적으로 실제로 게임 개발까지 이어지기 위해서는 좀 더 기본적인 내용들을 많이 다뤄봐야 하는데, 이부분은 좀 더 쉽게 전달할 수 있도록 컨텐츠들을 연구해서 또 소개해보도록 하겠다.
참고로, 다음 컨텐츠는 많은 분들이 사랑해줄수록 더 빨리 힘이 나서 또 준비할 수 있다는 사실?!
관심과 응원 부탁드립니다.
감사합니다.