inline setup code

This commit is contained in:
2026-02-18 09:29:04 -08:00
parent e3d6933f25
commit 0597889aad

View File

@@ -19,29 +19,6 @@ impl From<ToSurfaceTarget> for wgpu::SurfaceTarget<'static>{
}
}
async fn setup_and_start(canvas:web_sys::HtmlCanvasElement)->(wgpu::Device,wgpu::Queue,wgpu::Surface<'static>,wgpu::SurfaceConfiguration){
let size=(canvas.width(),canvas.height());
println!("Initializing the surface...");
let instance=setup::step1::create_instance();
let surface=setup::step2::create_surface(&instance,ToSurfaceTarget{canvas}).unwrap();
let adapter=setup::step3::pick_adapter(&instance,&surface).await.expect("No suitable GPU adapters found on the system!");
let (device,queue)=setup::step4::request_device(&adapter).await;
let config=setup::step5::configure_surface(&adapter,&device,&surface,size);
(
device,
queue,
surface,
config,
)
}
#[wasm_bindgen]
pub struct Setup{
device:wgpu::Device,
@@ -51,7 +28,14 @@ pub struct Setup{
}
#[wasm_bindgen]
pub async fn setup(canvas:web_sys::HtmlCanvasElement)->Setup{
let (device,queue,surface,config)=setup_and_start(canvas).await;
let size=(canvas.width(),canvas.height());
let instance=setup::step1::create_instance();
let surface=setup::step2::create_surface(&instance,ToSurfaceTarget{canvas}).unwrap();
let adapter=setup::step3::pick_adapter(&instance,&surface).await.expect("No suitable GPU adapters found on the system!");
let (device,queue)=setup::step4::request_device(&adapter).await;
let config=setup::step5::configure_surface(&adapter,&device,&surface,size);
Setup{device,queue,surface,config}
}
#[wasm_bindgen]