tawasuyu

tawasuyu/llimphi

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

Rust 484Markdown 258TOML 131RON 38118 Definiciones

⎇ main llimphi-voxel-studio/src/arranque.rs Rust · 48 líneas · 1.5 KB Historia Quién tocó qué crudo

chore: refresco desde el monorepo — 132 miembros, 79 widgets, la galería vuelve y licencia dual d8edd9a9c · Sergio ·

1use super::*;
2
3pub(crate) fn main_de_verdad() {
4    rimay_localize::init();
5    if std::env::args().any(|a| a == "--shot") {
6        shot::shot();
7        return;
8    }
9    if std::env::args().any(|a| a == "--turntable") {
10        let p = Project::starter();
11        let mr = p
12            .mundos
13            .first()
14            .and_then(|m| p.render_mundo(m.id))
15            .unwrap_or_else(fallback_render);
16        match render::turntable(&mr) {
17            Ok(out) => eprintln!("turntable ok: {out}"),
18            Err(e) => eprintln!("turntable error: {e}"),
19        }
20        return;
21    }
22    if std::env::args().any(|a| a == "--flythrough") {
23        let p = Project::starter();
24        let mr = p
25            .mundos
26            .first()
27            .and_then(|m| p.render_mundo(m.id))
28            .unwrap_or_else(fallback_render);
29        match render::flythrough(&mr) {
30            Ok(out) => eprintln!("flythrough ok: {out}"),
31            Err(e) => eprintln!("flythrough error: {e}"),
32        }
33        return;
34    }
35    if std::env::args().any(|a| a == "--export") {
36        let p = Project::starter();
37        match p.escenas.first() {
38            Some(s) => match render::export_scene(&p, s) {
39                Ok(out) => eprintln!("export ok: {out}"),
40                Err(e) => eprintln!("export error: {e}"),
41            },
42            None => eprintln!("export error: el proyecto no tiene escenas"),
43        }
44        return;
45    }
46    llimphi_ui::run::<Studio>();
47}
48