본문으로 건너뛰기
소개

게이머가 게이머를 위해 만든 사운드보드.

CrossVoice의 탄생 이야기를 만든 사람이 직접 들려드립니다.

CrossVoice에 대하여

저는 Mordhau와 Hunt: Showdown 같은 게임을 좋아하고, Mordhau의 보이스 라인 시스템을 늘 마음에 들어 했습니다. Chivalry 2의 시스템도 마찬가지였습니다. 그러다 어느 순간, 같은 메커니즘을 Hunt: Showdown에서, 나아가 보이스 채팅이 있는 다른 어떤 게임에서든 쓸 수 있지 않을까 하는 생각이 들었습니다.

그 아이디어는 가상 오디오 장치를 통해 작동하는, Python으로 만든 첫 프로토타입이 되었습니다. 콘셉트는 통했지만, 여러 사정으로 프로젝트는 몇 년 동안 보류되었습니다.

그 후 Soundpad 같은 사운드보드를 접하면서 마이크를 통해 소리를 재생하면 무엇을 할 수 있는지 알게 되었습니다. 하지만 제가 찾은 사운드보드는 모두 같은 방식이었습니다. 키 하나에 소리 하나. 그래서 프로젝트를 다시 꺼내 처음 프로토타입보다 훨씬 더 멀리 나아가기로 했습니다. C++로 실험을 시작해, 소리를 처리하고 전송하는 방식을 실제로 제어할 수 있는 네이티브 오디오 솔루션을 만들었습니다.

거기서부터 애플리케이션의 나머지 부분을 C#으로 만들었는데, 프로필을 관리하고 보이스 명령을 설정하는 인터페이스부터 시작했습니다. 곧 소리를 재생하는 것은 문제의 일부일 뿐이라는 걸 깨달았습니다. 눌러서 말하기를 쓰는 게임을 포함해, 모든 것이 각 게임의 보이스 채팅과도 맞물려 작동해야 했습니다. 그래서 오디오 라우팅과 저수준 키보드 처리를 파고들게 되었고, 그런 키 입력을 안정적으로 관리할 수 있게 되었습니다.

전술 스타일의 CrossVoice Overlay

개발이 진행되면서 CrossVoice는 성장했습니다. 프로필은 명령을 페이지로 정리하고, 키와 보조키, 오디오 변형, 볼륨·음높이·재생 속도 같은 설정을 갖추도록 발전했습니다. 또한 게임을 떠나지 않고도 매치 중에 앱을 사용하고 제어할 수 있도록 상시 오버레이를 추가했습니다.

제 목표는 언제나 CrossVoice가 특정 게임에 의존하지 않는 것이었습니다. 프로필을 원하는 방식으로 설정해 여러 게임에서 사용할 수 있으며, 게임별 연동도 필요 없고 앱이 지금 무엇을 플레이하는지 알 필요도 없습니다.

그쯤 되자 이 모든 작업이 제 프로필 안에만 머무르는 것은 별 의미가 없었습니다. 플레이어들이 자신의 프로필을 공유하고 커뮤니티가 만든 것을 즐길 수 있게 하면 어떨까? 그렇게 CrossVoice의 커뮤니티 기능이 모습을 갖추게 되었습니다.

이렇게 CrossVoice는 Python 프로토타입에서 오늘날의 프로젝트로 성장했습니다. Mordhau와 Hunt: Showdown을 플레이하며 떠올린 아이디어는 훨씬 더 야심 찬 프로젝트가 되었고, 저는 애플리케이션의 거의 모든 부분을 직접 만들고 확장해 왔습니다.

— Raúl Mateo

Raúl Mateo

저에 대하여

제 이름은 Raúl Mateo Sanguino입니다. 컴퓨터 애플리케이션 개발을 공부했고, 2006년에 소프트웨어 개발자로 경력을 시작했습니다.

오랫동안 약국 소프트웨어 분야에서 일하며 관리 애플리케이션, 외부 시스템과의 연동, 약국 업무를 자동화하는 솔루션을 만들고 유지 관리했습니다. 시간이 지나며 더 많은 책임을 맡게 되었고, 회사가 다국적 그룹에 인수될 때까지 Farmalog의 프로그래밍 부서장을 지냈습니다.

경력 내내 다양한 기술과 프로그래밍 언어를 다뤄 왔지만, 늘 특히 관심을 가진 것은 사물이 내부에서 어떻게 작동하는지 이해하는 일, 그리고 간단한 답이 좀처럼 없는 문제를 해결하는 일이었습니다.

현재는 계속 배우고 더 창의적인 측면에서 게임 개발에 접근하기 위해 UNIR에서 비디오 게임 디자인 및 개발 학위 과정을 밟고 있습니다.

일 외에도 비디오 게임은 늘 저의 큰 열정 중 하나였고, CrossVoice는 바로 그런 프로그래밍과 게임의 만남에서 탄생했습니다.

설계 원칙

방해하지 않고, 게임 안으로는 절대 들어가지 않습니다.

게임에 절대 손대지 않음

게임 메모리에 접근하지 않고, 코드나 DLL을 주입하지 않으며, 게임 파일을 변경하지 않습니다. 오버레이는 게임 위에 떠 있는 별도의 창입니다.

키보드 우선

모든 명령이 키 하나라서 마우스는 조준에 집중할 수 있습니다. 타이핑이 필요할 때는 언제든 상호작용 모드로 키를 일시 중지할 수 있습니다.

실제 마이크 그대로

가상 케이블도, 새로 선택할 장치도 없습니다. 보이스 라인은 게임이 이미 쓰고 있는 마이크에 합류하고, 내 목소리도 그대로 전달됩니다.

로컬에서 가볍게

일상적인 사용은 일반 Windows 사용자 권한으로 실행되며, 프로필은 내 PC에 그대로 남습니다. 베타 기간에는 시작할 때마다 저희 서버에서 베타 키를 확인하며, 그 밖의 데이터는 커뮤니티를 이용하거나 보고서를 보낼 때만 PC 밖으로 나갑니다.

CrossVoice 사용해 보기

CrossVoice는 베타 단계입니다. 베타 키를 신청하고 다운로드하세요. 베타 기간에는 CrossVoice를 열려면 키가 필요합니다.