Vulkano backend for egui

Latest version Documentation

This is a drawing backend to use egui with Vulkano. It can be used with eguiwinitplatform for input handling.

Usage

```rust let mut eguipainter = eguivulkano::Painter::new( device.clone(), // your vulkano Device queue.clone(), // your vulkano Queue Subpass::from(render_pass.clone(), 1).unwrap(), // subpass that you set up to render the gui ) .unwrap();

// ...

// Get the shapes from egui let (output, clippedshapes) = eguictx.endframe();

// Automatically start the next render subpass and draw the gui eguipainter .draw( &mut builder, // your vulkano AutoCommandBufferBuilder [width, height], // window size &eguictx, // your egui CtxRef clipped_shapes, ) .unwrap(); ```

Check the included working example for more info.

Limitations

At the moment there is no support for user textures. This is my first project with Vulkan/Vulkano and I make no guarantees about performance or correctness. Pull requests are welcome!

Credits

With inspiration from eguiwinitashvkmem, eguisdl2gl and egui_glium.