d94dcfb5af
Shader (gioser-shaders):
- 3 cuerpos centrales renderizados realísticamente con interpolación
gradual entre ellos (cross-fade smoothstep):
- render_sun: núcleo gauss + corona pulsante + textura de plasma FBM
(boiling surface).
- render_moon: disco con limb darkening, cráteres + mares (2 octavas
de fbm), terminador móvil (fase lunar), halo azulado en el limb
iluminado.
- render_earth: disco con continentes fbm (rotación lenta), polos
blancos, nubes en otra capa, día/noche en hemisferio iluminado,
halo atmosférico azul (Rayleigh simplificado).
- Uniforms u_body_a, u_body_b (int 0/1/2), u_body_blend (float).
- Cuerpo central se calcula sólo si inside > 0.001 (perf — saltea pixels
fuera de la superficie de la chacana).
- radial_mult atenúa los rayos cuando luna/tierra están activos — el sol
es el único que irradia tan intensamente.
- element_cloud(): aura ancha por cardinal (sigma_along=0.42,
sigma_perp=0.34) con textura fbm animada y modulación por elemento.
- AIRE: corrientes suaves que ondulan horizontalmente.
- FUEGO: lengüetazos rápidos con flicker.
- TIERRA: densidad sólida con variación lenta.
- AGUA: ondulaciones grandes que viajan hacia afuera.
Las nubes cubren todo el cuadrante del cardinal, no solo la punta.
- Helper functions vnoise_c + fbm_c agregadas (necesarias para superficies
realistas de luna/tierra y para nubes elementales).
Renderer (gioser-canvas-web):
- body_state(t) -> (body_a, body_b, blend) state machine:
- BODY_PHASE_SECS = 45 (≈10 pulsos del sol antes de transicionar).
- BODY_TRANSITION_SECS = 4 (cross-fade gradual).
- Total cycle: 147s = sol 45s → trans 4s → luna 45s → trans 4s → tierra 45s → trans 4s.
- Smoothstep cubic en el blend para curva natural (no linear).
- Sube u_body_a/b como int (uniform1i) y u_body_blend como float.
App + contenido:
- index.html: nuevos labels en los 4 tips
- NORTE (aire): SOFTWARE / Tecnología
- ESTE (fuego): QUIÉN SOY / Bitácora
- SUR (tierra): MANIFIESTO / Invariantes
- OESTE (agua): MÍSTICA / Espiritualidad
- Íconos SVG nuevos relacionados al tema:
- aire: chip de circuito con nodos y conexiones
- fuego: libro abierto con líneas
- tierra: hexagrama dentro de círculo (sacred geometry / invariante)
- agua: ojo en triángulo (mística)
- gioser-web src/lib.rs: ensure_page_dom usa nuevos title+tag por elemento.
- 4 md/*.md reescritos con contenido seed para los nuevos temas, con
manifiesto explícito en tierra.md.
Workspace verde + 21 tests.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
1.2 KiB
1.2 KiB
Software · Tecnología
Lo público. Lo que se mantiene abierto.
Acá viven los proyectos de software libre, herramientas, librerías y exploraciones técnicas que voy publicando. La premisa es mantener el código abierto, documentado y útil más allá del autor.
Qué vas a encontrar acá
- Repos públicos de cosas que escribo (Rust, Python, embedded, web).
- Notas técnicas sobre arquitectura, sistemas distribuidos, runtimes.
- Ensayos sobre IA aplicada — sin hype, con ejemplos concretos.
- Bitácoras de exploración: lo que probé, lo que descarté, lo que sigo usando.
Por qué open source
Porque el conocimiento técnico se multiplica cuando circula. Y porque mucho de lo que uso a diario me lo regaló alguien que decidió compartir. La reciprocidad importa.
Stack actual
- Rust para lo que necesita ser rápido, seguro y portable.
- Python para análisis, ML y prototipos rápidos.
- Linux (Artix/Arch) como sistema operativo de trabajo.
- gitea + nix para infraestructura personal.
Próximamente
Voy a ir enlazando proyectos específicos acá: tools, runtimes,
experimentos. Por ahora, este placeholder vive en md/aire.md y se
renderea con el tema aire (azul-blanco).