게임을 만든다는 것은 간단한 일이 아니다. 정말 만들고 싶은 아이디어가 있다면, 시작하면 된다. 인디 개발자들의 성장에 따라서 게임을 만드는 것이 지금보다 쉽고 비용이 적게 들었던 적이 없었다. 이 글을 읽고 자신이 꿈 꾸어 오던 게임을 만들고 세상에 공개해 보자.
단계
-
장르를 결정한다. 모든 게임이 다 독특하겠지만, 거의 모든 게임이 특정한 장르로 분류 가능하다. [1] X 출처 검색하기 어떤 게임을 만들고 싶은지 결정한 후에 비슷한 장르의 게임이 어떻게 진행되는지 알아 보자. 다음은 유명한 장르들이다.
- 아케이드
- 슈팅 게임
- 퍼즐
- 플랫폼 게임
- 레이싱
- 어드벤처
- 무한 달리기
- RPG
- FPS(1인칭 슈팅)
- 스토리/만화 기반 JRPG
- 타워 디펜스
- 공포
- 격투
- 코미디
- 생존
-
초기 디자인을 해 보자. 한 페이지 이상은 되어야 하며, 게임 플레이의 핵심을 기술해야 한다. 자신의 게임에 대한 기본적인 컨셉과 정말 게임으로 만들 수 있는 부분인지 확인해 보아야 한다.
-
핵심 철학에서 시작한다. 철학은 게임을 끝까지 제작하는데 필요한 동기를 부여한다. 게임의 핵심이 무엇인지 적는 간단한 문장을 의미한다. 게임을 만들면서 이 기준을 항상 만족하는지 확인해 보자. 다음은 예시이다.
- 이 게임은 우주 정거장 운영 시뮬레이션이다.
- 이 게임은 진짜 자동차를 움직이는 느낌을 준다.
- 이 게임은 플레이어의 반응 속도를 측정한다.
-
기능을 적자. 이 기능들이 이제 다른 장르들과 자신의 게임을 구분해 주는 기준이다. 아이디어와 컨셉을 나열해 보자. 그리고 컨셉들을 동작으로 바꾸어 보자. 5~15개 정도면 된다. 다음은 예시이다.
- 컨셉: 우주 정거장 건설
- 기능: 자신만의 우주 정거장을 건설 및 관리한다.
- 컨셉: 운석으로 인한 파괴
- 기능: 운석, 태양풍, 혜성 등의 환경의 위협에서 살아남기
- 기능을 먼저 적으면, 나중에 게임 디자인 문서를 만들 때 해당 내용을 교정해서 반영할 수 있을 것이다. 처음에 기능을 적어 놓으면 프로젝트에 집중할 수 있고, 게임에 끊임없이 추가되는 것을 막을 수 있다.
- 정말 만들고 싶은 게임이 될 때까지 이 기능 목록을 수정하자.
-
잠깐 쉬자. 초기 디자인을 서랍에 넣어 둔 후, 1, 2주 정도는 프로젝트에 대해 생각하지 말자. 나중에 새로운 관점으로 게임을 다시 보기 위함이다. 이렇게 하면 게임을 진짜 만들어야 할지, 또는 다시 처음부터 시작해야 할지 결정할 수 있다.광고
-
상세한 부분에 대해 생각을 해 보자. 디자인 문서는 게임 개발의 중추가 되는 부분이다. 게임의 작동 방식, 플롯, 설정, 미적인 부분 등 모든 것을 적는 문서이다. 문서의 형식은 내용에 비해 별로 중요하지 않다. [4] X 출처 검색하기
- 디자인 문서는 개발자와 디자이너가 함께 일할 때 더욱 중요하다. 문서가 그들 모두를 위한 것이 되어야 한다. 고객을 위한 것이 되어서는 안 된다. 두루뭉술하게 적지 말고 게임이 어떻게 작동해야 하는지 각각에 대해 자세히 적자. [5] X 출처 검색하기
- 모든 게임이 디자인 문서를 가지고 있는 것이 아니며, 똑같이 생긴 디자인 문서는 존재하지 않는다. 이 글의 과정은 참고만 하고, 자신의 게임의 요구 사항에 따라서 문서를 만들어 가야 한다.
-
문서의 각 항목을 채워 넣는다. 목차가 완성이 되면, 게임에 대해서 자세히 적어 나가자. 각 게임 요소 및 작동 방식에 대해서는 자세히 설명되어야 한다. 구현할 때 전혀 헷갈리지 않을 정도까지 되어야 한다.
-
다른 사람의 도움을 받자. 접근 방식에 따라서, 협업이 무척 중요할 수 있다. 다른 사람의 통찰력이 게임에 더욱 집중할 수 있게 만들어 주며, 생각하지 못했던 부분까지 작성할 수 있게 해 준다.
- 더욱 깐깐하게 검토할 수 있도록 검토자에게 출시용 디자인이란 점을 알려주자.
- 부모님과 같이 친한 사람에게 디자인을 보여줄 예정이라면 더욱 후한 점수를 받을 수 있다는 점을 염두에 두자. 친한 사람이 검토하면 안된다는 뜻은 아니지만 유일한 검토자여도 안된다.
광고
-
엔진 결정하기. 엔진이란 게임의 기반이 되는 부분이다. 엔진에는 게임 개발을 쉽게 해 주는 수많은 도구가 포함되어 있다. 현재 있는 엔진을 사용하는 것이 처음부터 다 만드는 것보다 쉽고, 덜 복잡하다. 인디 개발자를 위한 엔진은 많이 있다. [8] X 출처 검색하기
- 엔진은 그래픽, 사운드, AI 처리도 도와 준다.
- 각각의 엔진은 장단점을 가지고 있다. 어떤 엔진은 2D 게임에 더 적절하고, 어떤 엔진은 3D 게임에 더 적절하다. 어떤 엔진은 프로그래밍 지식이 많이 필요하지만, 그렇지 않은 것도 있다. 개발 지식 없이도 사용할 수 있는 엔진도 있다. 다음은 유명한 엔진들의 예이다.
- GameMaker: Studio - 2D 게임을 만드는 유명한 도구이다.
- Unity - 사용하기 쉽고, 많은 기기를 지원하는 것으로 유명하다.
- RPG Maker VX - JRPG 스타일의 2D RPG 게임을 만드는데 특화된 프로그램이다.
- Unreal Engine(구 UDK) - 수없이 많은 곳에 사용되는 3D 엔진이다.
- Source - 계속 업데이트 및 수정되는 유명한 3D 엔진이다.
- Project Spark - 일반 사용자를 위해 최적화된 3D 엔진이다.
-
엔진에 대해 공부하거나 아는 사람을 구한다. 어떤 엔진을 골랐냐에 따라서, 프로그래밍이 많이 필요할 수 있다. 가장 간단한 엔진조차도 무엇이 가능한지 알기 위해서는 공부가 필요하다. 프로그래밍을 할 줄 모른다면, 배우거나, 사람을 고용해야 한다.
- 이 부분이 팀을 만들어가는 시작점이다. 프로그래밍을 할 줄 모른다면, 첫 직원은 프로그래머가 되어야 할 것이다. 그래픽과 사운드는 다음 문제이다. 프로젝트가 계속 진행되기 위해서는 우선 작동하는 프로토타입이 있어야 한다.
- 함께 알아 나가고 성장해 가야 할 개발자들은 많이 있다. 사람들은 다 제각기 다른 이유와 보상을 위해서 게임 프로젝트에 참여 한다. 이 때, 게임 디자인 문서가 도움이 된다. 자신의 생각을 남에게 이해시킬 수 있기 때문이다.
-
프로토타입을 만든다. 엔진에 익숙해졌다면, 게임의 프로토타입을 만든다. 이 프로토타입을 이용하면 게임의 기본 기능을 테스트해 볼 수 있을 것이다. 그래픽이나 사운드가 필요하지 않다. 또한 캐릭터가 아니고, 상자가 막대 같은 것으로 캐릭터를 대체한 후에 작은 공간에서 테스트 해 보면 된다. [9] X 출처 검색하기
- 프로토타입을 테스트하고 발전시키자. 프로토타입만으로도 재미를 느낄 수 있게 해 주자. 뭔가 이상하거나 좀 아니다 싶은 것은 적어 놓자. 그리고 해당 작동 방식을 어떻게 변경시켜야 할지 고민해 보자. 프로토타입도 재미 없다면, 최종 게임도 재미가 없을 것이다.
- 쉬워 보였던 기능이 직접 만들려고 달려들면 어렵거나 불가능한 경우가 있다. 무엇이 되고, 안 되는지 알아가면서 프로토타입은 계속 바뀔 것이라는 것을 알아 두자.
-
게임 조작을 수정하자. 게임의 가장 기본적인 기능은 플레이어가 게임과 여러 가지 입력을 통해 상호작용한다는 것이다. 프로토타입을 이용해 조작 방법이 완벽한지 확인해 보자.
- 조작이 제대로 되지 않는 게임은 답답하다. 플레이어에게 게임 플레이에 대한 보상을 하는 가장 좋은 방법은 조작을 정확하게 할 수 있게 해 주는 것이다.
광고
-
프로젝트의 요구 사항을 고려해 보자. 프로젝트의 범위에 따라서, 그래픽 애셋 요구 사항은 달라질 것이다. 어떤 게임은 단순한 도형과 색깔만 있으면 될 것이고, 다른 게임들은 복잡한 세계관에 많은 수의 그래픽, 사운드 디자이너들이 필요할 것이다. 게임 애셋에 대한 목표를 현실적으로 잡고, 적절히 고용하자.
- 대다수 인디 게임은 작은 팀이나 많은 경우 한 사람에 의해 개발된다. 혼자서 프로젝트를 진행한다면, 특히 애셋들을 혼자 다 만들 경우, 엄청난 시간이 들 것을 각오해야 한다.
- 게임 개발 커뮤니티를 둘러 보면 무료로 사용할 수 있는 애셋들이 많이 있다. 다른 사람들의 저작권을 침해하지 않도록 주의하자.
-
일부 애셋들에 대해서 초안을 작성해 보자. 게임의 그래픽적인 면의 느낌을 알기 위해서 그래픽 애셋들의 프로토타입을 만들어 볼 필요가 있다. 그리고 그 프로토타입을 게임에 적절히 변형해 나가는 것이다.
-
게임의 세계, 구조를 디자인한다. 어떤 그래픽 애셋을 사용할지 정했다면, 이제 게임을 만들 차례이다. 만들려는 게임의 스타일에 따라서 스테이지나 플레이할 공간을 만들어야 할 수 있다. 퍼즐 게임을 만든다면, 퍼즐을 디자인해야 한다.
-
그래픽 애셋을 만들자. 그래픽 스타일에 따라서 여러 가지 프로그램을 사용할 수 있다. 다음과 같은 프로그램들이 있다.
- Blender - 가장 유명한 오픈 소스 3D 모델링 프로그램이다. 이 프로그램을 어떻게 사용하는지에 대한 강의가 인터넷에 널렸다. (한국어 문서는 별로 없고, 영문이 많기는 하다.)
- 포토샵 - 텍스처 제작 및 2D 그래픽에 필수적인 프로그램이다. 비싸기 때문에 돈이 문제라면 GIMP를 사용해 보는 것도 추천한다.
- Paint.net - Paint Shop Pro의 오픈 소스 대용품이다. 2D 그래픽을 공짜로 만들 수 있다.
-
사운드를 녹음하자. 사운드는 게임을 플레이할 때 플레이어가 몰입할 수 있게 도와 준다. 배경음, 효과음, 대화문 녹음이 있는지 없는지에 따라서 플레이어가 게임에 몰입하는 정도는 달라질 수 있다.
- 인터넷에서 멋지고 좋은 효과음과 음악 제작 프로그램을 무료로 구할 수 있다. 재정적인 부분이 문제라면, 이런 것들을 사용해 보자.
- 집에 있는 물건들을 사용해서 효과음을 만들어도 된다.
광고
-
버그를 찾자. 처음부터 끝까지 작동하는 게임을 만들었다면, 게임을 망가뜨릴 방법을 찾아야 한다. 버그를 찾고, 제거하는 것은 많은 사람들이 게임을 재미있게 하는데 필수적인 조건이다.
-
많이 안 해 볼 것 같은 것을 해 보자. 플레이어가 게임에 해 볼만한 어떤 동작이든 해 보자. 게임의 규칙에서 어긋나는 행동을 해 보고, 어떤 일이 일어나는지 관찰하자.
- 버그 테스트는 엄청난 시간이 걸린다. 게임 만드는 것보다 더 걸릴 수도 있다. 더 많은 사람이 테스트에 참여할수록 더 많은 문제를 찾을 수 있고, 고칠 수 있다.
-
버그 수정의 우선 순위를 정하자. 긴 버그 목록을 가지고 있고, 수정하는데 필요한 시간이 적다면, 심각하고, 게임을 망가뜨리는 버그부터 우선 수정하자. 예를 들어서, 점수를 얻는 게임에서 플레이어가 말도 안 되는 점수를 얻을 수 있는 꼼수가 존재한다면, 그 버그는 바로 제거해야 할 것이다.
-
다른 사람들이 플레이하는 것을 관찰하자. 친구들에게 부탁해서 게임을 해 보라고 이야기하자. 그들이 어떻게 게임에 접근하는지, 어떻게 게임과 상호작용하는지 알아 보자. 그들은 전혀 생각하지 못했던 방식으로 게임을 플레이 할 수도 있다. [13] X 출처 검색하기광고
-
엔진의 규칙을 확인하자. 각 엔진은 특정 플랫폼을 지원하며, 각 플랫폼에 필요한 라이선스 등을 명시하고 있다. 예를 들어, Game Studio의 경우, 스탠더드 버전에서는 윈도우와 맥에서 출시 가능하지만, 모바일 버전에 출시하려면 약간의 비용을 지불해야 하며, 프로 버전을 써야 한다.
-
홍보하자. 게임 출시일이 다가오면, 주의를 끌기 위해 노력하자. 스크린샷과 플레이 영상을 게임 사이트에 올리자. 게임 뉴스 사이트에 연락하고, 게임이 곧 출시될 것이라고 하자. 어떻게 다운로드 가능하며, 가격은 얼마인지, 어떤 게임인지 알리는 것을 잊지 말자. [14] X 출처 검색하기
- 팬들을 얻기 위해서 회사 웹사이트를 구축하자. 게임 게시판을 만들어서 플레이어들끼리 대화를 나눌 수 있게 하고, 사이트를 주기적으로 업데이트해서 주의를 끌자.
-
배포 서비스를 선택하자. 일부 개발자는 자신의 사이트에서 게임을 배포하기도 하지만, 호스팅 비용 등이 만만치 않다. PC와 맥 게임을 배포한다면, 다음과 같은 사이트를 사용해 보는 것이 좋다.
- Steam
- Desura
- Humble Store
- GOG
- 모바일 게임의 경우에는 (애플 앱 스토어, 구글 플레이 스토어 같은) 앱스토어들을 사용하면 된다. 콘솔 게임들 역시 Xbox Live나 PlayStation Network 등을 이용하면 된다.
- 각 서비스마다 게임이 판매되었을 때 가져가는 수수료가 다르다. 조사해 보고 어떤 것이 자신과 맞는지 확인해 보자. 개발자와 직접 연락할 수 있는 담당자들이 있다.
-
게임을 지원하자. 게임이 출시되면, 재정적으로 허락하는 한도에서 버그 수정과 더 많은 컨텐츠를 추가해 주자. 디지털 배포가 가능하다는 의미이는 게임을 예전에 비해서 쉽게 업데이트 가능하다는 것이다. 사람이 많아지면 찾을 수 있는 버그들이 생길 것이다. 최대한 빨리 수정할 수 있도록 노력을 하자.광고
팁
- 게임을 만드는 방법은 한 가지만 있는 것이 아니다. 이 글을 읽고 자신에게 맞는 방법을 찾아 보자.
- 억대 매출이 금방 나올 것이라고 생각하지 말자. 게임 제작은 열정이다. 돈은 보너스일 뿐이다.
- 어떤 사람들은 이것이 불가능할 것이라고 생각할 것이다. 하지만 스스로 진지하게 일해 나간다면 성공할 수 있을 것이다.
광고
주의사항
- 만들다 보면 크고 작은 문제를 만나게 될 것이다. 그렇다고 그만두지 말자. 게임 개발은 시간이 많이 필요한 작업이며, 충분히 그런 시간을 투자할만한 일이다.
- 19세 미만 이용 불가 판정을 받는 것을 피하자. 그러면 일부 회사들은 그 게임을 팔지 않을 것이다.
출처
- ↑ https://www.idtech.com/blog/different-types-of-video-game-genres
- ↑ https://www.raywenderlich.com/120-how-to-submit-an-app-to-apple-from-no-account-to-app-store-part-1
- ↑ https://docs.godotengine.org/en/3.1/getting_started/workflow/export/exporting_for_ios.html
- ↑ https://www.gamedesigning.org/learn/game-design-document/
- ↑ https://www.gamedesigning.org/learn/game-design-document/
- ↑ http://bbrathwaite.wordpress.com/2008/11/30/creating-a-game-design-document/
- ↑ https://www.gamasutra.com/blogs/LeandroGonzalez/20160726/277928/How_to_Write_a_Game_Design_Document.php
- ↑ https://dzone.com/articles/5-best-video-game-development-tools-for-indie-game
- ↑ http://www.gamesradar.com/how-to-make-a-videogame-with-no-experience/
- ↑ http://www.gamasutra.com/blogs/JamesMarsden/20130629/195334/Designing_An_Awesome_Videogame.php
- ↑ https://www.gamefromscratch.com/post/2013/06/11/Creating-art-for-your-game-when-you-are-a-programmer.aspx
- ↑ https://gamedevelopment.tutsplus.com/articles/9-tips-for-indie-game-developers-i-learned-at-gdc-2013--gamedev-6591
- ↑ https://www.freecodecamp.org/news/from-zero-to-game-designer-how-to-start-building-video-games-even-if-you-dont-have-any-experience-5e2f9f45f4bb/
- ↑ https://www.forbes.com/sites/quora/2018/08/10/what-are-some-good-marketing-strategies-for-an-indie-video-game/#38d6365b588c
이 위키하우에 대하여
이 문서는 99,846 번 조회 되었습니다.
광고