Template application for writing dockspace apps with viewport using bevy

Hi,
I'm looking for some advice on how I've structured this template application for writing dockspace apps with viewport using bevy (intended for creating editor applications that require a viewport) - it's only about 200 lines of code and is well commented.

I'm firstly curious about performance - I'm rendering the camera output to texture and displaying it in an egui widget. How bad is the performance hit of doing this and are there ways I can optimise it or write the code in a different way?
Secondly, are there ways I can improve this template to make it a better starting point for applications? The way data has to be passed in to TabViewer to then use in tabs seems clunky but I couldn't find a better way of doing it.
Thanks!

1 Like