Q3Edit: ブラウザベースの Quake 3 マップ編集と実行

Q3Edit: ブラウザベースの Quake 3 マップ編集と実行

Q3Edit はブラウザネイティブな Quake 3 マップ作成を可能にします

Q3Edit は、実際の .map ファイルを開き、編集し、保存できるウェブベースのエディタです。外部のゲームファイルやソフトウェアのインストールを必要とせず、編集、コンパイル、ゲームプレイというマップ作成パイプライン全体を単一のブラウザ体験に統合しています。

技術アーキテクチャ

Q3Edit は、高性能な編集環境を提供するために TypeScript と WebGL2 を使用して構築されています。このツールは WebAssembly (WASM) を活用して、レガシーな C ベースのツールをブラウザに持ち込み、設計からプレイへのシームレスな移行を可能にします。

マップ編集と UI

エディタは、オリジナルの Quake マップエディタの伝統的なワークフローを反映した、「Radiant スタイル」の 4 ビュー・ユーザーインターフェースを備えています。以下のコアなマップ要素をサポートしています:

  • Brushes: マップの主要な幾何学的構成要素。
  • Patches: 詳細化に使用される 2D サーフェス。
  • Entities: ゲームオブジェクトとロジックトリガー。
  • Terrain: 特化された地形ジオメトリ。
  • CSG (Constructive Solid Geometry): ブラシを使用して空間を削り出すためのブーリアン演算のサポート。

コンパイルと実行

生のマップファイルをプレイ可能なレベルに変換するために、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