forestiles/src/main.rs

41 lines
1.1 KiB
Rust
Raw Normal View History

2024-08-22 17:21:34 +01:00
mod graphics;
mod state;
use state::State;
use graphics::Graphics;
use winit::event_loop::EventLoop;
2024-08-20 22:12:18 +01:00
pub fn main() {
#[cfg(target_arch = "wasm32")]
{
std::panic::set_hook(Box::new(console_error_panic_hook::hook));
console_log::init().expect("could not initialize logger");
}
#[cfg(not(target_arch = "wasm32"))]
{
env_logger::init();
}
let event_loop = EventLoop::new().unwrap();
let window = winit::window::WindowBuilder::new().build(&event_loop).unwrap();
#[cfg(not(target_arch = "wasm32"))]
{
2024-08-23 17:04:26 +01:00
let state = State::new();
pollster::block_on(Graphics::init(&window, state)).run(event_loop);
2024-08-20 22:12:18 +01:00
}
#[cfg(target_arch = "wasm32")]
{
2024-08-22 17:21:34 +01:00
use winit::platform::web::WindowExtWebSys;
2024-08-20 22:12:18 +01:00
web_sys::window()
.unwrap()
.document()
.unwrap()
.body()
.unwrap()
.append_child(&window.canvas().unwrap())
.unwrap();
wasm_bindgen_futures::spawn_local(async move {
2024-08-22 17:21:34 +01:00
Graphics::init(&window, State::new()).await.run(event_loop);
2024-08-20 22:12:18 +01:00
});
}
2024-08-18 18:02:10 +01:00
}