How we built an entire universe in a year and a half
How we created a beautiful, low-poly, procedurally generated universe for mobiles
Case study: Morphite
The well-known mobile publisher, Crescent Moon Games, was looking to create a universe filled with procedurally generated planets for mobile. They needed a solution that could provide a large amount of content for the game without investing too much time in it.
Our mission was to help them achieve a cool-looking, low-poly aesthetic game that could reach the top of the App Store within the given time and budget.
We figured out how to make these worlds procedurally generated, filled with procedurally generated animals, spaceships, space stations, colors, dungeons, cities, etc., while maintaining a consistent low-poly aesthetic throughout the project. This also helped to save time in rigging and texturing.
Featured for 2 weeks on the App Store.
A total of 41k premium sales on the App Store with more than $200k in revenue.
One million downloads on Android.
Ported to PC, Xbox, PS4, and Nintendo Switch.
3D Procedural Generation Design.
Crescent Moon Games is a well-established publisher on iOS and Android that focuses on premium games with a huge emphasis on good quality graphics. They led the game development, followed by the game development team at We're Five Games, who took care of the programming side and animations, Blowfish Studios, a game development company that published the game on consoles, various freelancers for level design and music, and us, Polygonal Mind, who were in charge of making the 3D content of the game.
Morphite is a casual atmospheric FPS mainly inspired by Metroid Prime and No Man's Sky. The premise was to have a main story with fixed planets and a procedural universe, meaning endless planets to visit and explore filled with different animals and vegetation that you can kill and scan. Oh, and it had to run on mobile.
Morphite took us a year and a half from the first art test that we made for the game to the final game release. There are tons of problems we solved and dozens of stories to be told about the game, but this time we are going to focus on:
The low-poly look and colors.
The procedural levels.
The procedural creatures.
Fixed main story levels.
The lowpoly look and colors
One of the reasons this game uses big, flat polygons is for optimization: fewer polygons mean fewer draw calls. Additionally, most of the game's models do not have any textures, so every color you see is a material, and each material changes its hue based on the planet you are visiting. This applies to animals, items, characters, trees, environments, and dungeons - probably everything except the weapons and main characters.
Here are some examples of the same animal in different planets:
The procedural levels
One of the most ambitious features of the game was the ability to visit an endless number of planets. However, this was also one of the most challenging aspects. We started by creating boundaries on exploration. This meant that inside a planet, you could only walk or use land vehicles, and the only way in or out of the planet was by using your drop pod. This allowed us to use a procedural level system similar to what you would see in games like Diablo.
The procedural levels are made up of pre-defined terrain chunks that overlap each other with connectors. One chunk is taken as the root, and the rest of them spawn randomly from it, forming a tree-like structure. Here is a screenshot of an entire planet from above!
We had to be careful to make the terrain chunk connectors look natural so that the player could not see them easily. However, they also had to be structured in a way that allowed us to add doors, walls, and caves between them.
We also separated the terrain from the walls, allowing us to create wall variations for each terrain chunk. Thanks to this, we could use the same terrain piece multiple times without it feeling repetitive, and we could also repurpose them as caves sometimes.
The procedural creatures
If you play Morphite, you will find that there are dozens of different creatures, critters, enemies, and animals. This is mainly because we made a huge number of them, but also because of the way we designed them, which allowed us to mix between creatures and create easy variations.
Before creating an animal, we decided which parts were going to move with a simple shape sketch. This allowed us to see how many parts the animal really has and also helped us decide which parts would need variations.
After deciding what needed to be done, we used ZBrush to create the basic body shape. We employed ZSpheres to quickly create the topology. Then, in Maya, we separated the body parts, fixed the topology, added materials, and prepared everything for Unity!
Having the animals broken down into separate parts allowed us to create new animals using parts that were already completed, create variations in body parts, and also saved us some time in skin weighting. Most of the wildlife in Morphite has at least 6-7 head variations, 4-5 body variations, and different limbs.
The feline has up to 17 head variations!
The fixed main story levels
Morphite has 16 handcrafted story levels, most of which are planets resulting from a collaboration between the entire team using a well-defined workflow, even though we all worked remotely.
First, the awesome level designer, Mike Madden, created a blockout of the level with cubes inside Unity.Then, we took those cubes into Maya and organized them into regions.
Afterward, we take every region to ZBrush, and using Dynamesh, we are able to sculpt the terrain out of those blocks. Using Decimation Master, we reduce the polycount of the terrain to a desired amount and then export it back to Maya.
We used Maya to fix the unappealing topology that polygon reduction tools like Decimation Master often produce, as well as to add some special details that are easier to create using polygonal modeling software. We also added materials and exported everything as separate FBX files.
Now it's time to import the terrain into Unity so that the game designer and the programmer can add functionality to the level.
Morphite was released on iOS as a premium game on 20/09/2017, and it was featured on the App Store for two weeks. It had a total of 41,000 purchases, generating over $200,000 in revenue.
Months later, it was released on Android as a free game with in-app purchases, and it had over a million downloads, generating more than $40,000 in revenue.
The game was also ported to Steam PC by the We're Five Games team, and it was later ported to Xbox, PS4, and Nintendo Switch by Blowfish Studios.
Morphite is a huge mobile game, not just because it has an open world to play in, but because it offers an endless amount of them!
In this case study, I focused on the most relevant parts when it comes to the visual side of the game, but there is much more to cover, such as procedural space stations, vendors, ships, humanoids, side quests, and more.
This game was made by a remote team, working in different time zones and continents, through collaboration and dedication. I'm really proud of all the work they managed to ship.