refresh: stack al día (vello 0.7 / wgpu 27 / parley 0.6) + motor 3D voxel

Re-sincroniza las fuentes desde el monorepo (estaba en vello 0.5/wgpu 24 y con la
estructura vieja de eventloop) y suma el 3D:

- bump del workspace a vello 0.7 / wgpu 27 / parley 0.6, + accesskit 0.24 /
  accesskit_winit 0.33 / vello_hybrid 0.0.9.
- nuevos crates: llimphi-3d (voxels ray-march + mallas en un depth compartido,
  montable dentro de un View 2D vía set_viewport+scissor) y llimphi-voxel
  (world-gen, personajes, director de escenas) + shared/foreign-vox (puente .vox).
- README: sección "Not just 2D — a 3D voxel engine" + GIF (docs/llimphi_voxel.gif).
- excluido modules/allichay (arrastra deps fuera del alcance del front-door).
- cargo check --workspace: verde.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Sergio
2026-06-18 14:40:00 +00:00
parent e74800d9da
commit ccab39f140
202 changed files with 44034 additions and 1811 deletions
+18
View File
@@ -14,3 +14,21 @@ vello = { workspace = true }
# Sólo para los tipos de la firma de GpuPaintFn (Device/Queue/Encoder/View).
# wgpu NO depende de winit — el compositor sigue libre de windowing.
wgpu = { workspace = true }
[dev-dependencies]
# Volcado headless del paint a PNG (llvmpipe) para VER sombra/gradiente/borde
# sin levantar ventana. Sólo capas inferiores — no llimphi-ui (sin ciclo).
llimphi-hal = { path = "../llimphi-hal" }
llimphi-raster = { path = "../llimphi-raster" }
llimphi-theme = { path = "../llimphi-theme" }
png = { workspace = true }
pollster = { workspace = true }
# Widgets REALES para el showreel: el `View<Msg>` que devuelven es el mismo
# tipo (`llimphi_compositor::View`, re-exportado por llimphi-ui), así que
# montan con el mount/paint/measure de este mismo crate. Dev-only → sin ciclo
# en el grafo normal (llimphi-ui depende de este crate, no al revés).
llimphi-widget-switch = { path = "../widgets/switch" }
llimphi-widget-slider = { path = "../widgets/slider" }
llimphi-widget-progress = { path = "../widgets/progress" }
llimphi-widget-button = { path = "../widgets/button" }
llimphi-widget-segmented = { path = "../widgets/segmented" }