Single render node
All the improvements thanks to the addition of the NodeRenderer
only apply to the currently rendered ‘root’ Node
.
Since I was still rendering the Planet
and the different overlays separately, the improvements weren’t fully utilized.
This could for example cause issues with transparency between overlays and the Planet
due to incorrect back to front rendering.
I finally was able to generate a single render Node
for the entire scene, resolving those issues.
For this to work I added a new Node
:
pub struct ViewPerspectiveNode {
pub view: Matrix4,
pub perspective: Matrix4,
pub child: Box<RcNode>,
}
Since the different UIs have individual cameras, I needed a wrapper Node
to set those during rendering.
Notification background
To further improve the readability of notifications, I added a background to them: