Adaptation 360 Lab

The scene-perfecting rig for the ten adaptations, from inside the specimen — pick a part and a tier (none/poor/decent/great) and a scripted 360° scenario showcases exactly what it does, with body-kit silhouettes, event vignettes and camera emotes, all mirrored in the 3rd- and 1st-person views where the specimen visibly wears the part.

Adaptation 360 Lab

The scene-perfecting rig for the ten adaptations, from inside the specimen — pick a part and a tier (none/poor/decent/great) and a scripted 360° scenario showcases exactly what it does, with body-kit silhouettes, event vignettes and camera emotes, all mirrored in the 3rd- and 1st-person views where the specimen visibly wears the part.

---

.. toc::

One adaptation, one scene, three cameras

The per-part labs ([Eyespot](/adaptation-eyespot), [Jaw](/adaptation-jaw), …) tune each adaptation's *mechanics*; the [Balance Lab](/balance-lab) tunes the *economy*. This lab tunes the presentation: what an adaptation looks and feels like from inside the specimen, in the [🪬 360 POV](/360-dish) the dish lab prototyped — so every none / poor / decent / great tier can be art-directed as its own scene before any of it touches /petri-dish-evolution.

Pick a part and a tier; a scripted micro-scenario loops forever:

| Part | Scene | What plays out | |------|-------|----------------| | Flagellum | sprint | straight-line gate runs — speed reads as an hfov punch + streamlines | | Cilia | weave | a slalom of close gates — agility is crisp snap turns | | Membrane ruffle | glide | long banking arcs — efficiency is a camera that breathes | | Pseudopod | crawl | anchor-and-pull locomotion with a visible heartbeat | | Eyespot | sense | food drifts in *unseen* until it crosses the tier's true range — then a detection ping | | Filter mouth | graze | plankton streams into a baleen throat — or passes clean through | | Jaw | hunt | stalk → lunge → bite (a camera impact + mandible snap) | | Proboscis | siphon | feeding at standoff range through a living straw | | Spike | deter | a daphnia charge breaks on your crown — or on your membrane | | Stinger | strike | a venom punch that stuns the subject stiff |

none is a scene too — the failure mode of not having the part: lunges glance off, charges land, water passes through, gates get overshot. That contrast is what makes a tier feel *earned* when the game eventually grants it.

A note on the movement ladder: in the game's model (lib/movement.py) poor is a stat liability (a kinked tail subtracts from the archetype) while none is a control liability (18% input authority over a helpless drift). A tireless scripted pilot can integrate that drift back up to full archetype speed, which made none *look* fastest — so the rig applies the model's own control knob to the drift input, restoring the ladder the tiers are supposed to communicate (≈2 / 3.5 / 11.7 / 18.6 wu per tick on a euglena).

.. exec::docs.adaptation_360.adaptation_360

The 360 design language

This rig establishes the rules a future in-game 360 camera will inherit:

vignette (bite flash, venom wash, shield spark, detection ring) with a [CAM_EMOTES](https://github.com/pip-install-python) timeline — lunge punches, decaying crunch shakes, recoils — scaled or *replaced* by tier (a great membrane shrugs off what knocks a bare cell down).

lower band, anchored to the *body's heading* rather than the gaze — mandibles that snap when you bite, a tail whipping behind you, a spike crown ringing the view, a proboscis that extends to its target with flow dashes, baleen combs, a pulsing pseudopod lobe. Tier scales size, density and reach; none simply isn't there.

👁 1st person via CV.renderArena, with the specimen visibly wearing the part through SPL.spriteOverlay — the splicer's own organelle markup, so the silhouette here matches the game's exactly. The eyespot's vision tiers (radar / blur / muted / full) apply in 1st person *and* as the sphere's treatment.

scenario's subject at constant angular speed (the /360-dish director model), and the director yields whenever an emote timeline is playing.

Built on dash-pannellum 0.3.1

The sphere is a dynamic canvas scene (panoramaCanvasId + dynamicUpdate) reusing the /360-dish renderer (window.P360R): the ray-traced dish, per-pixel floor reprojection, the glass wall — with the body kit and scene effects drawn over it each tick. 0.3.1's in-place hotspot diff (stable name = same DOM node, position writes mutate the live spec) is what lets /360-dish track its contact click-zones at full cadence; this rig keeps its cast in the texture where the effects live.

Scaling path

Each scene is deliberately the *grammar* of a future game moment: hunt is the carnivore feed loop, deter is the hunter-contact event, sense is the food-detection HUD cue, the move scenes are the archetype feels. When the 360 POV graduates into /petri-dish-evolution, these scenarios become event handlers driven by the real engine (EVO) instead of scripts — the body kit, effects, emotes and director carry over unchanged. Until then, nothing here touches the game.

---

*Source: /adaptation-360*

Note for AI agents: This is the static, prerendered view of an interactive Dash application served because we detected a non-JS user agent. Full prose docs: