Mobile VR Game - Skylight
Client: E McNeill
This environment was created for a Gear VR game called Skylight which was released in early 2017 as a follow up project to Tactera. Similar to its predecessor, it is a strategy game which is visualized as holographic projection in a realistic looking sci-fi setting. A key difference was that the game takes place on a spaceship bridge directly in front of the player and not on a table in a subterranean bunker. Thus, more emphasis had to be put on the environment this time. As resources were limited I decided to use a ready made high-poly asset as starting point as it was almost tailor made for our purposes. It was important to give the room depth and interesting features to look at but at the same time keep it non-obtrusive as it only serves as backdrop for the main game. To achieve this, subtle lighting was key. As the target platform was the Gear VR (which utilizes a mobile phone as processing unit), an optimized, low-poly version of the command bridge was necessary. I did a retopo of the high-poly geometry which consisted of almost 2 million polys and ended up with a 20k poly mesh that performed nicely on the given hardware. The lighting was then baked into the textures and transferred onto the optimized geometry. This way no expensive real-time lighting was necessary and all the intricate details of the original room, including the photorealistic lighting effects, could be preserved.
On Skylight I was also responsible for creating the entire fleet of 12 space ships. The holographic look of these units could be adopted from a prior game project called Tactera. Again, it was important to have a "Tron-like" look conveyed with as little detail as possible to make sure the ships are not too cluttered and easily readable even if they are small on screen. Therefore, I refined the semi-automated texturing pipeline I developed for Tactera so that I had full control over the visibility of edges on the actual 3D geometry. This way I could quickly iterate between different "wireframe-layouts" to see what worked best.
In regards to modeling I was on a tight poly-budget as performance is always an issue with VR projects on a mobile platform. So I went for a modular approach where I literally stuck a bunch of primitives onto simple low-poly base-shapes. This is a bit unusual as you normally want closed, water-tight meshes when it comes to game-engines. But as no real-time lighting and shading was needed open meshes were not an issue. At the end of the day this modular approach not only saved me a ton of polygons but also a lot of time as later changes and optimizations could be applied fairly easily.