mod app;
mod connection;
mod matrix;
mod model;
mod recording;
mod render;
mod resources;
mod serial_core;
mod style;
mod texture;
mod ui;
mod utils;
use app::EskinDesktopApp;
use eframe::egui;

fn main() -> eframe::Result<()> {
    env_logger::init();

    let options = eframe::NativeOptions {
        renderer: eframe::Renderer::Wgpu,
        viewport: egui::ViewportBuilder::default()
            .with_inner_size([1920.0, 1080.0])
            .with_min_inner_size([1280.0, 720.0])
            .with_decorations(false),
        ..Default::default()
    };

    eframe::run_native(
        "Eskin 模型播放器",
        options,
        Box::new(|cc| Ok(Box::new(EskinDesktopApp::new(cc)))),
    )
}
