tawasuyu

tawasuyu/llimphi

Sovereign retained-mode GPU UI framework in Rust (wgpu+vello+taffy+parley), Elm loop, 40+ widgets.

Rust 660Markdown 302TOML 157RON 312382 Definitions

⎇ 168cd187519c0ad575d3ce63baee2f164c38d9d1 llimphi-raster/Cargo.toml TOML · 55 lines · 2.3 KB History raw

chore: refresco desde el monorepo — 128 miembros, los 76 widgets y los 11 módulos b3f12e136 · Sergio ·

1[package]
2name = "llimphi-raster"
3version.workspace = true
4edition.workspace = true
5license.workspace = true
6authors.workspace = true
7publish.workspace = true
8
9description = "2D GPU rasterizer for llimphi over vello, with an opt-in CPU+GPU hybrid renderer."
10repository.workspace = true
11[dependencies]
12llimphi-hal = { path = "../llimphi-hal", version = "0.1.0" }
13# El motor de GPU de vello: acá SÍ hace falta, y se pide explícito porque el
14# dep del workspace viene sin features por defecto.
15vello = { workspace = true, features = ["wgpu", "wgpu_default"] }
16# El encoding crudo de vello, para la huella de escena (`src/huella.rs`). `vello`
17# no lo reexporta como módulo —sólo tres tipos sueltos— así que se pide directo.
18# La versión va clavada a la de `vello`: son el mismo release.
19vello_encoding = "0.9"
20foldhash = { version = "0.2", default-features = false }
21# El rasterizador CPU+GPU sin compute, envuelto: `llimphi-hybrid` es quien
22# sabe reproducir una `Escena` grabada contra `vello_hybrid`. No se declara
23# `vello_hybrid` suelto — sale reexportado de ahí, junto con el `Pintor`.
24llimphi-hybrid = { path = "../llimphi-hybrid", version = "0.1.0", optional = true }
25pollster = { workspace = true }
26
27[features]
28default = ["perfil-vello"]
29# Marcador SIN efecto sobre la librería: existe sólo para que los examples que
30# hablan `vello::Scene` directo puedan pedirlo por `required-features`. Sin él,
31# `--features hybrid --no-default-features` intenta compilarlos igual y falla con
32# «expected &Escena, found &Scene» — que es cierto pero inútil: esos examples no
33# tienen sentido en el perfil hybrid, donde la escena es de otro tipo.
34perfil-vello = []
35# Cambia el backend de `Renderer` a vello_hybrid (CPU+GPU, sin compute) y con
36# él el tipo de `Escena`. EXCLUYENTE con el default: son escenas de tipos
37# distintos. Quien la encienda tiene que compilar además `llimphi-text` y
38# `llimphi-compositor` en su perfil `cpu`, que es el que pinta en una `Escena`.
39# Ver el encabezado de `src/lib.rs`.
40hybrid = ["dep:llimphi-hybrid"]
41
42[[example]]
43name = "render_node"
44path = "examples/render_node.rs"
45required-features = ["perfil-vello"]
46
47[[example]]
48name = "spike_gpu_directo"
49path = "examples/spike_gpu_directo.rs"
50required-features = ["perfil-vello"]
51
52[[example]]
53name = "gpu_million_points"
54path = "examples/gpu_million_points.rs"
55required-features = ["perfil-vello"]