feat(cockpit): replace procedural cockpit with twelve scripted models
Quality Gate / Quality Gate (pull_request) Successful in 9m4s

Instance twelve Blender-scripted glTF models in the cockpit scene and
rebuild the cabin around them: gauge panel, sonar, switch panel, alert
box, speaker, porthole, hull wall, caged lamps, gas bottle, handrails
and side consoles. Presentation only; no domain, application or world
rule changes beyond enabling glow in the test environment.

- Needles, alert lamps and sonar screen are driven by the existing
  snapshots; the alert box now carries SYS/ATTN/ALRM.
- Depth dial reads percent of certified depth.
- Sonar display restyled as a turquoise holographic relief with a
  shader grid and height scale; SubViewport matches the glass (960x604).
- Cabin lighting retuned: warm pooled lamp light, cool porthole rim,
  lamp shadows, dial backlight.
- Procedural stand-ins removed (bulkhead, tanks, consoles, levers,
  indicator columns, placeholder pipe run, dial face PNGs).
- Tests adapted where nodes disappeared; one assertion removed
  (pipe_segment_count) until the pipe kit is placed.
- Model .glb files are committed without LFS; textures Godot extracts
  next to them at import are ignored.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
OlivierandClaude Opus 5.5 committed 2026-10-06 21:36:57 +02:00
1 parent 912123087f
commit 2f9b7c0894
45 files changed
+1353 -1603

No files matched your search

+39 -22
View File
@@ -1,37 +1,54 @@
# Cockpit texture provenance
# Cockpit asset provenance
These textures were generated specifically for Ransom's Wake on 3 October 2026
## Textures
The texture below was generated specifically for Ransom's Wake on 3 October 2026
with OpenAI's built-in image generation tool. No third-party image was used as
an input or reference.
## `naval_painted_steel_albedo.png`
### `naval_painted_steel_albedo.png`
Prompt summary: seamless, orthographic PBR-style albedo of dark blue-green
naval painted steel, with restrained salt-air oxidation, micro-scratches,
paint chips and grime; neutral illumination; no borders, rivets, text or
watermark.
## `analog_gauge_face_albedo.png`
The source output was resized to 1024 × 1024 and stripped of metadata for
runtime use. The original generated output remains in the local Codex image
generation store and is not required by the game.
Prompt summary: orthographic vintage naval gauge face in aged ivory enamel,
with fine crazing, soot, speckling and a faint printed arc; no bezel, needle,
hub, glass, text, numbers, logo or watermark.
The generated gauge faces (`analog_gauge_face_albedo.png` and the four
`*_gauge_face_albedo_v2.png`) were removed on 6 October 2026: the dials are now
printed on the gauge panel model below.
Both source outputs were resized to 1024 × 1024 and stripped of metadata for
runtime use. The original generated outputs remain in the local Codex image
generation store and are not required by the game.
## Models
## Dedicated instrument faces
`models/gauge_panel.glb`, `models/sonar.glb`, `models/switch_panel.glb`,
`models/alert_box.glb`, `models/speaker.glb`, `models/porthole.glb`,
`models/hull_wall.glb`, `models/cage_lamp.glb`, `models/gas_bottle.glb`,
`models/handrail_l.glb`, `models/handrail_r.glb` and `models/side_console.glb`
were produced for Ransom's Wake
by Blender scripts written for the project, from concept sheets generated for
the project. No third-party mesh, texture or scan was used. Their textures
(base colour, ORM, normal and, where relevant, emission) are embedded in the
`.glb` files: 2048² for the gauge panel, sonar and switch panel, a 4096 × 1024
strip for the four printed dials, 2048² for the porthole and hull wall, 1024²
for the other props.
`oxygen_gauge_face_albedo_v2.png`, `battery_gauge_face_albedo_v2.png`,
`hull_gauge_face_albedo_v2.png` and `depth_gauge_face_albedo_v2.png` were
generated on 4 October 2026 with the same built-in tool. The approved cockpit
target and then the oxygen face were used only as project-owned style
references.
Dial and label lettering is rendered into the textures with Arial and Impact,
which are Windows system fonts. **Their licence must be checked before the game
is distributed.**
Prompt summary: orthographic mechanical submarine gauges in aged ivory enamel,
with exact French labels and units, dense numerical scales, restrained patina,
and green, amber and red operating sectors. The generated needles, bezels and
glass were explicitly excluded because those parts are modeled and animated in
Godot. The source outputs were resized to 1024 × 1024 and given a circular alpha
mask for flat, distortion-free mounting inside the physical bezels.
The Blender sources are not in this repository. A model is changed by editing
its generating script and re-exporting, never by editing the import in Godot.
The cockpit scene references the `.glb` files directly, so a replaced file
updates the cockpit without touching the scene.
With Godot's default import settings the embedded textures are extracted as
`models/<model>_<texture>.png` next to each `.glb`. Those PNG files are import
by-products, regenerated from the `.glb`, and are not sources.
As of 6 October 2026 the `.glb` files are deliberately **not committed**
(their textures are still being balanced, and the repository uses plain Git
without LFS). Until they are, `cockpit_interior.tscn` only loads on a machine
that has them in `models/`.