Skip to content

feat(naval-drone): add the naval drone explainer - #40

Merged
veelenga merged 99 commits into
mainfrom
feat/naval-drone
Oct 3, 2026
Merged

veelenga merged 99 commits into
mainfrom
feat/naval-drone

Conversation

@veelenga

@veelenga veelenga commented Oct 3, 2026 •

Copy link
Copy Markdown
Member

Overview

  • add the naval-drone explainer: a two-minute run of a Magura V5 type uncrewed boat from a slipway, over the resistance hump, onto the plane and out to a ship at anchor, told in six chapters (the boat, the planing hull, the waterjet, the satellite link, the horizon and radar, the fleet and its variants)
  • model from a sourced facts sheet: Savitsky-based trim, wetted length and lift share, waterjet thrust from mass flow and jet speed, video delay as distance travelled, visual and radar horizons, with the scope kept to how the boat floats, planes, is driven, steered and seen, and every claim hedged as the sources do
  • scene: a hull lofted through station sections with chines and spray rails, deck items, a cutaway of the engine, tanks, payload bay and electronics, a waterjet with a spinning impeller, steering nozzle and reverse bucket, a shader sea with sea states, bow wave, chine spray, foam wake and jet stream, an underwater window for the hull and jet chapters, a ship, shore, satellites and link beams
  • the hull and jet chapters hold the boat at a chosen speed or throttle while the run is paused; the overview opens on the whole closed boat and the jet chapter opens the hull
  • chapter widgets: speed marks, helm, link mode, sea state and fit chips, speed, throttle, video delay and radar height sliders, a horizon canvas, gauge readouts for the clock, speed, hull mode and distance
  • copy in all eight languages, each rewritten from the English meaning by a native writer, with zero dashes and descriptions within the limits, trimmed so every page fits the JavaScript budget
  • cover and link preview image

Notes

Lint, the full test suite (3,325 tests) and the build with the site check pass. The largest page (uk) loads about 297 kB of gzipped JavaScript against the 300 kB budget.

Browser QA on desktop 1440 × 900 and iPhone 13 in English, Ukrainian and German, including free orbit around every chapter: no page or console errors, no untranslated keys, no horizontal overflow, no overlapping labels. The fixes from that round are in: the boat rocks only on the long swell and barely while a chapter holds it, so labels stay put; the bow camera view clears the dome; far views orbit around the boats; chapter controls apply their own chapter first; and the wake, clouds, shore, beams, reverse bucket and water window were reworked. The run now ends a few metres short of the ship's side.

One small issue remains in core: on a phone, when a hull chapter control brings the hull chapter back while the jet chapter is marked active, the jet keeps its marker until the next scroll. A lasting fix belongs in src/core/ui/sections.ts.

@veelenga veelenga self-assigned this Oct 3, 2026
…d barely while held

Heave, pitch and roll now follow the three longest wave components through a one second low-pass, and a held boat moves at a small fraction of that, so the labels in the jet chapter hold still.
@veelenga
veelenga merged commit 3b05f93 into main Oct 3, 2026
1 check passed
@veelenga
veelenga deleted the feat/naval-drone branch October 3, 2026 17:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant