# HexGL 3D anti-grav racer, Catmull-Rom banked track, lap-attack, AI ghost. ```{raw} html ▶ Run in browser

Upstream: https://github.com/BKcore/HexGL

``` **Tags:** `port` `tier-2` # HexGL: SimVX Port A SimVX port of [BKcore/HexGL](https://github.com/BKcore/HexGL) (anti-grav 3D racer in the WipEout tradition). ## Run ```bash # Interactive (Vulkan window) uv run python ported_games/hexgl/simvx_port/main.py # Headless capture sweep: writes 8 PNGs into screenshots/ uv run python ported_games/hexgl/simvx_port/main.py --test # Smoke harness (no graphics) uv run python ported_games/hexgl/simvx_port/harness.py # Web export (single HTML) uv run simvx export web ported_games/hexgl/simvx_port/main.py \ -o ported_games/hexgl/simvx_port/web/index.html ``` ## Controls | Action | Keys | |---|---| | Thrust | W / Up | | Brake | S / Down | | Steer left / right | A / D / Left / Right | | Air-brake left | Q / Left-Shift | | Air-brake right | E / Right-Shift | | Restart race | R | | Quit | Esc | ## Track and ships The track is procedurally generated from an 8-point Catmull-Rom spline, extruded along the curve into a banked floor + side walls. 6 virtual checkpoints, 3 emissive boost pads. The hull and ghost AI are built from SimVX `Mesh.cone` + `Mesh.sphere` primitives. **No upstream assets are redistributed**: upstream's track meshes and HUD textures are CC-BY-NC. ## Source ```{literalinclude} ../../examples/ports/hexgl/main.py :language: python :linenos: ```