Integrating InstaLOD into Memories of Mars
Populating an Open World
Right from the beginning we knew we wanted Memories of Mars (MOM) to be an open world survival game without any in-game loading times which would break the immersion. Surviving on Mars should be a continuous experience. However the already high amount of assets needed to dress a believable open world was increased even further by players’ possibility to add their own creations. Ultimately, high quality Level of Detail models (LODs) for assets as well as level proxy meshes (Level LODs) became a crucial requirement for us.
With a relatively small development team and even smaller art team, investing time into polishing, let alone creating LODs was simply not possible. There was a need for a reliable and preferably fast solution and InstaLOD proved to be the right option. What really sets InstaLOD apart is the integration into Maya and 3dsMax. The ability to integrate InstaLOD directly into our Art pipeline was quite a time saver. On top of that, it is just nice to author LODs inside the software you are most comfortable with.
I was quite amazed by the little time needed to reduce a rather highpoly asset and the pretty clean result you get. Quite often the differences between the first few LODs are hardly visible. InstaLOD does a good job of keeping the overall silhouette of an asset. With the right Screen Size setting in Unreal Engine 4 applied, the transition in-game is almost seamless:
Example of three LODs generated using InstaLOD for Maya
Speeding up the Art Pipeline:
The same can be said about the generating of LODs for skeletal meshes. It turned out to be a valuable feature for us. We have quite an arsenal of weapons and armour in MOM and all of them are skeletal meshes. Having the possibility to generate LODs for them on the fly without having to worry about skinning each LOD manually is a real time saver.
In the end we are able to provide more granular quality settings due to the large amount of LODs we created.
To increase production speed even more, batch-profiles (simple JSON files) can be set up in Maya or Max with pre-defined reduction settings. These batch profiles can easily be shared amongst the team. The combination of InstaLOD’s batch processing and our own packing tools turned creating, grouping and exporting assets to Unreal Engine 4 into a matter of just a few clicks. Most of the lower LODs even proved to be accurate enough to be used as player collisions straight away.
What applied to single assets quickly became the same need as for Level LODs. Viewing distances on the red planet are far, and large structures serve as crucial orientation landmarks for players. Therefore the overall silhouette and characteristics of in-game locations needed to be kept recognisable even from larger distances. This brought up the question how to best create LODs for entire levels. Being an Early Access title, MOM is still an evolving project. We keep iterating on levels almost daily. Exporting them from Unreal to Maya and reassigning all textures would have been painful. Luckily, InstaLOD released a new Unreal Engine 4 plugin. The new plugin includes nearly all features from the Maya or 3ds Max integration, so it includes all the tools needed to create LODs of entire scenes in the engine directly.
Level LOD generated in-engine using the InstaLOD plugin
Empowering the Team:
As a plus it empowers everyone on the team to create or update a level LOD themselves. This way our level designers can keep changing the structure of a level and generate the LOD directly afterwards without additional support from the art team.
We started to use the powerful polycount reduction for other areas of the asset pipeline as well. During the production of MOM we worked with several Outsourcing partners from across the world. InstaLOD allowed us to be less restrictive in terms of polycount requirements in the briefings and instead, let our Outsourcing partners focus on the artistic side of asset creation.
The same was true for in-house asset production. InstaLOD made it easy for us to merge several textures into one. This way we could create new assets out of already pre-existing assets or fully textured asset-kits without ending up with multiple material draw calls per newly created objects.
During all this time the InstaLOD team was very responsive. We worked closely with them and in turn we got some additional features tailored to our specific needs.
In the end, using InstaLOD proved to be the right decision for us. It became a central tool in our Art pipeline and will be in future game productions for sure.