Making THE EDITOR
A substantial chunk of our time was devoted to the noble art of debugging our application. Let's be real, repeatedly running the same shader or fiddling with the tiniest details in our 3D scene can make you question life's purpose.
So, I decided to embark on a quest: the creation of an editor for our beloved lattice engine. Its primary mission? Well, it was mainly our savior during those grueling debugging sessions, giving us the power of visualizing different framebuffers without summoning RenderDoc every now and then. Imagine the sheer delight of reloading shaders on the fly – no more closing the application, running the asset pipeline, and starting the application again just to see an effect.
But wait, there's more! This editor didn't stop at just the basics. It also kept an eagle eye on our application's performance, allowed us to tweak 3D object transformations on the go, toggled the profiler like a light switch, and even added new assets to our project without sending the entire asset pipeline into a frenzy. Speaking about the asset pipeline. I integrated a content registry that kept tabs on all the assets in our project.
The project settings within the editor enabled or disabled certain features, these features ranged from default camera position, field of view, and projection to enabling hybrid rendering or not. All in all, it was an extensive toolkit at my disposal to craft, nurture, and expand our beloved lattice engine.
Over time, this nifty editing functionality began to catch the attention of various clients, fellow employees, and eventually even upper management. The lightning-fast iteration and the mesmerizing visual feedback offered by this software turned it into a powerful toolkit that Twikit couldn't resist incorporating into their next marketing strategy for the grand launch of 'Laddy' – their personalized lattice engine.
Before this star could take the stage, a bit of a makeover was in order. We needed to give the UI a fresh coat of paint, and some new functionality that wasn't just for debugging purposes.
A first design was quickly drafted by our UX designer to restyle the current application this design was later used as the "Advanced UI" for experienced users of the application.