Q3Edit: 브라우저 기반 Quake 3 맵 편집 및 실행

Q3Edit: 브라우저 기반 Quake 3 맵 편집 및 실행

Q3Edit은 브라우저 네이티브 Quake 3 맵 제작을 가능하게 합니다

Q3Edit은 사용자가 실제 .map 파일을 열고, 편집하고, 저장할 수 있는 웹 기반 에디터입니다. 외부 게임 파일이나 소프트웨어를 설치할 필요 없이 편집, 컴파일, 게임플레이로 이어지는 전체 맵 제작 파이프라인을 단일 브라우저 환경으로 통합합니다.

기술 아키텍처

Q3Edit은 고성능 편집 환경을 제공하기 위해 TypeScript와 WebGL2를 사용하여 구축되었습니다. 이 도구는 WebAssembly (WASM)를 활용하여 레거시 C 기반 도구들을 브라우저로 가져와, 디자인에서 플레이까지 원활한 전환을 가능하게 합니다.

맵 편집 및 UI

에디터는 기존 Quake 맵 에디터의 전통적인 워크플로우를 반영하여 "Radiant-style" 4분할 뷰 사용자 인터페이스를 특징으로 합니다. 다음과 같은 핵심 맵 요소를 지원합니다:

  • Brushes: 맵의 주요 기하학적 구성 요소입니다.
  • Patches: 디테일 작업을 위해 사용되는 2D 표면입니다.
  • Entities: 게임 오브젝트 및 로직 트리거입니다.
  • Terrain: 특화된 지형 기하학입니다.
  • CSG (Constructive Solid Geometry): 공간을 깎아내기 위한 브러시의 불리언 연산(boolean operations)을 지원합니다.

컴파일 및 실행

가공되지 않은 맵 파일을 플레이 가능한 레벨로 변환하기 위해, Q3Edit은 id Software의 오리지널 q3map 컴파일러의 WebAssembly 포트 버전을 사용합니다. 컴파일이 완료되면, 오픈 소스 엔진인 ioquake3의 WASM 포트 버전을 통해 브라우저 내에서 즉시 맵을 실행할 수 있습니다.

이 애플리케이션은 OpenArena 에셋을 포함하고 있어, 사용자가 별도로 게임 파일을 제공할 필요 없이 편집과 플레이를 바로 시작할 수 있습니다.

커뮤니티 반응

Hacker News의 사용자들은 오리지널 Quake 맵 에디터에 대한 강한 향수를 느끼며, 이러한 도구들을 웹으로 가져온 기술적 성취에 대해 높게 평가했습니다.

한 사용자 @spikk는 이 도구가 단순한 제작을 넘어선 잠재적 유용성을 언급했습니다:

This can actually accidentally become the best debugging tool for map files, ngl you should cook

다른 사용자들은 id Software 엔진의 역사적 중요성을 강조하며, 브라우저로 포팅된 레거시 소프트웨어의 기본 메커니즘을 이해하기 위해 Fabien Sanglard의 Quake 3 엔진 심층 분석 작업을 언급했습니다.

Sources