My Journey at Versity: Unleashing Unreal Engine Magic and Beyond
Updated: Oct 10
Greetings, fellow tech enthusiasts! Today, I'm excited to share my journey at Versity, a startup that has kept me on my toes since my arrival in December 2022.
When I joined has the only unreal engine developer, the 3D team was already hard at work, crafting their digital realms. At first glance I was quite excited because there was NFT & Crypto Involved in the subject, but I quickly realized that they would only work on this on the "web" part, that disapointed me a little, I just stopped "GoldFever" project just before, a NFT Survival Play to Earn Game, where I did quite a lot of Crypto part, but that's alright ! I'll make an article about that adventure soon. My first mission: To create an environement for them to work has a team, they where using sharing hardrive... !! o_o"". Its a recurent problem in most of the company I worked for. I took my magic wand and introduced them to P4V, that is a very good Source Control for Unreal Engine. I'll write a detailed article about P4V for the pro & cons.
I after empower them with optimization tools and techniques that would make their work shine. I introduced them to the classic "staticstic" panel, a trusty tool to track down those resource-heavy high-poly meshes. We delved into the world of automatic LOD (Level of Detail), and I showed them the magic of Nanite. We embraced the power of 2 textures. With these optimizations, our 3D scenes transformed into breathtaking vistas... with more than 10FPS ;)
My journey didn't stop with 3D. I joined forces with the UI department, weaving design seamlessly into Unreal. I took charge of creating the logic behind widgets, ensuring a fluid user experience. In parallel I took care of the character, the interactions etc...
Then came the game-changer - the CES in Las Vegas.
Our project received acclaim, but we had bigger dreams. We wanted to make it accessible to anyone, regardless of their computer specs, without the need for pesky app installations. Enter Pixel Streaming, a technology that I already used in other projects.
In parallel, the team explored other options like "Unity Web GL", which demanded users to have a decent phone or computer, and rigorous optimization. We even considered "PlayCanvas," but it fell short in terms of quality and optimization requirements.
Amid these trials, I set up the Pixel Streaming logic on a Windows instance, allowing users to log in via IP Address. It worked, but costs added up quickly – around $0.50 per hour per user. Scaling to a million users would break the bank! Our solution? Porting to Linux, drastically reducing expenses.
Our web team handled the transition, bringing Pixel Streaming to Google Cloud and Linux for competitive prices. We then made some big upgrade to Pixel streaming, It adapted to the user's device, scaling screen size and displaying a mobile-friendly interface. One build for all devices – a dream come true.
Some research on how to bring the world in Unreal :
There was some small R&D & Mettings to get some quotes, should we use photographetry ? Sattelite images ? Well all of theses solutions cost millions... The best was I think Cesium I also worked on creating some "white boxes" like the one we see in google maps, thanks to open source data from OpenStreetMaps. With some C++ and some help of ChatGPT (I had to try o_o) I managed to pull out some great data like tree position, park etc and managed to spawn them directly in Unreal, that was quite fun !
I ventured into the world of AWS Gamelift, attempting to bring Versity online. I had to rewrite the entire code from scratch to make it multiplayer-friendly for replication. This wasn't in the original plan; we had to deliver quickly for CES Vegas.
Gamelift, typically designed for single maps, and not swaping between them while other users stay in other maps. It presented challenges when dealing with multiple maps. Multiplayer worked like a charm within a single map, but transitioning to another map, say, Las Vegas, proved tricky.
My experiments with multiple fleets didn't yield the desired results. My journey with Versity is ending this month, but I hope to find the solution to this puzzle before I go.
In a fast-paced environment, we often rush through challenges. It's been a whirlwind adventure, and I'm proud of the strides we've made. Versity has been a thrilling chapter in my journey, and I'm excited to see where our paths lead next.
Stay tuned for more tech adventures and breakthroughs!