Encargo del usuario a partir de un componente de referencia de pago cuya
fuente NO está disponible (la pestaña «Code» es de clientes). Así que
implementación propia — que es la regla de la casa de todos modos: solo el
vocabulario de parámetros se dejó cercano para poder compararlos.
QUÉ ES
Una esfera a contraluz: filo encendido, interior abierto, y capas de estelas
que la envuelven y giran — cada una sobre su eje inclinado, con su ritmo, con
motion blur a lo largo del barrido. El fragmento se mapea sobre la esfera
unidad y las estelas viven en ese espacio 3D, que es lo que las hace curvarse
con la superficie en vez de leerse como rayas planas.
ES UNA VARIANTE, LA ELIGE EL DESARROLLADOR
No sustituye al `orb`: conviven. `orb` está afinado para 32-48px (silueta
simple, movimiento perceptible a ese tamaño); `portal` tiene mucho más detalle
y luce en superficies grandes — a tamaño de componente pierde justo la
irregularidad que lo define. La demo gana un switch **studio** (220px) para
poder juzgar eso, porque un shader no se juzga a 40px y forzarlo desde la
consola no deja nada para la sesión siguiente.
EL INTERIOR ES TRANSPARENTE
No se pinta nada dentro: lo que se ve a través es la página. Eso es lo que
hace la variante agnóstica al tema SIN una sola rama claro/oscuro — un
interior relleno tendría que elegir bando, y elegirlo fue lo que en el primer
intento la convirtió en una bola de cristal. Los tres colores salen de los
mismos slots de rol que el orb (`solid` en el filo, `solid-hover` en la cara
cercana, `element` en la que se aleja): retintas el tema y cambia entera.
TRES LECCIONES DEL FORMATO, no de este efecto — anotadas en el README porque
las va a repetir quien toque el siguiente shader:
- Las estelas no pueden salir de senos. Un `sin()` da anillos de latitud
PERFECTAMENTE regulares que se leen como jaula de alambre por mucho que se
afinen; la irregularidad (longitudes distintas, trazos sueltos) exige ruido
anisótropo — aquí 1 : 9 en longitud/latitud, lento a favor del flujo y
rápido a través.
- `sin(q.y * freq)` sobre la esfera unidad da `freq/π` ciclos: ~9 son tres
trazos finos por capa, 22 es malla, 2 es un borrón. El número sale de la
cuenta, no del tanteo — tanteando me pasé de largo en ambos sentidos.
- El motion blur PROMEDIA: 5 muestras × 0.16 rad son 46° de barrido, que borra
las bandas en vez de estirarlas.
Verificado en Chrome real, claro y oscuro, en `acting` y `escalated`, a 48px y
en studio. Tests 370 (scene 9 + eidos 361) · eidos-lint aura 0 inválidos ·
docs:check sin errores nuevos · check en los 73 preexistentes.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>