핵심 요약
- GBA e-리더용 카드 인쇄가 너무 까다로워 수많은 인쇄소에서 거절당하고 출시가 무산될 뻔했던 개발자가 차기작 개발에 나섰습니다.
- 실물 카드 제작 실패에 대비해 C 언어 공통 코드베이스를 기반으로 GBA 버전과 PC 버전을 동시에 구동할 수 있는 엔진을 설계했습니다.
- 스프라이트와 오디오 등 핵심 로직을 분리해 플랫폼별 종속성을 줄였으며, PC판 역시 GBA 고유의 감성과 해상도를 유지하도록 제작 중입니다.
요약 게임보이 어드밴스(GBA)의 주변기기인 'e-리더(e-Reader)' 카드 게임을 만들던 한 인디 개발자가 겪은 눈물겨운 개발 비하인드가 화제입니다. e-리더는 트레이딩 카드에 인쇄된 도트 코드를 스캔해 게임 데이터를 읽어들이는 기기로, 인쇄 정밀도가 극도로 높아야 정상적으로 스캔이 됩니다.
개발자 맷 그리어(Matt Greer)는 과거 솔리테어 게임을 만들 당시 운 좋게 스캔이 잘 되는 인쇄 업체를 찾았으나, 후속작인 '픽셀 펍(Pixel Pup)' 개발 완료 후 해당 인쇄소가 장비를 교체하면서 카드가 전혀 인식되지 않는 대참사를 겪었습니다. 미국 전역 10여 곳의 인쇄소에 문의했지만 누구도 까다로운 특수 인쇄를 맡으려 하지 않았고, 결국 실물 카드 출시를 포기한 채 일반 GBA 롬으로만 게임을 발매해야 했습니다.
이런 뼈아픈 경험을 겪은 개발자는 차기작인 턴제 판타지 전략 게임 '에리딘(Eridin)'을 준비하며 독특한 '보험'을 들기로 했습니다. 바로 동일한 C 언어 코드베이스로 GBA/e-리더 버전과 PC(스팀/itch.io 등) 버전을 동시에 개발하는 것입니다. 카드를 인쇄해 줄 업체를 끝내 찾지 못하더라도 PC 버전으로 정상 출시할 수 있도록 안전장치를 마련한 셈입니다.
그는 GBA용 개발 라이브러리(DevKitPro, libtonc)와 PC용 미디어 라이브러리(SDL2)를 활용해 공통 엔진 API 레이어를 구축했습니다. 스프라이트나 오디오, 폰트 등 핵심 로직은 공통 코드로 처리하고, 화면 출력 등 플랫폼 종속적인 부분만 각각 구현하여 코드 중복을 최소화했습니다. PC 버전 역시 GBA 특유의 레트로한 감성을 살리기 위해 240x160 해상도를 기반으로 업스케일링하여 서비스할 예정입니다. 비운의 고전 기기에 대한 집념과 현실적인 플랫폼 타협이 돋보이는 개발기입니다.
Sponsored · 광고