I had to move all the logic into a structure, since winit-0.24 doesn't allow disposing things inside the render loop, so all the logic is behind an Option now.
The problem on Metal appears to still be there: we are rendering for a few frames (taking 100ms each), then hanging the driver. So the rendering is correct, but it's more of a scheduling issue, perhaps? I wonder if we somehow overflow the GPU with work here.
I had to move all the logic into a structure, since
winit-0.24
doesn't allow disposing things inside the render loop, so all the logic is behind anOption
now. The problem on Metal appears to still be there: we are rendering for a few frames (taking 100ms each), then hanging the driver. So the rendering is correct, but it's more of a scheduling issue, perhaps? I wonder if we somehow overflow the GPU with work here.