pub struct StarStudio { } impl Default for StarStudio { fn default() -> Self { Self { } } } impl StarStudio { /// Called once before the first frame. pub fn new(cc: &eframe::CreationContext<'_>) -> Self { // This is also where you can customize the look and feel of egui using // `cc.egui_ctx.set_visuals` and `cc.egui_ctx.set_fonts`. Default::default() } } impl eframe::App for StarStudio { fn update(&mut self, _ctx: &egui::Context, frame: &mut eframe::Frame) { // The backend is guaranteed to be Vulkan so we can punch through the HAL to do our own thing. let wgpu = frame.wgpu_render_state().expect("eframe backend is not wgpu"); let device = unsafe { wgpu.device.as_hal::() }.expect("wgpu backend is not vulkan"); dbg!(device.enabled_device_extensions()); // TODO: set up a PaintCallback to render game to } }