First things first, Set up a moodboard.
Before opening any 3D software, we look for references and place them together...
When it comes to picking the right colors, I like to visit Adobe Colors to quickly make my own set of color palettes or to create one from the colors of the images from the references.
These are some of the palettes for this project:
Opening Substance Painter
To open the project, we can use the default template for Painter since we are only going to use the albedo on this project, but if we want use some opacity to add some transparency on the model I prefer to use the left one.
It's not necessary to decide it right now since you can change it any moment from the shader settings.
It's possible to import the normal maps and other additional maps when you start a project, but you can get a pretty good result from the baker mesh maps in the Texture Set settings.
One of the things I like to do, is to add a Fill layer with a base color without detailing anything to see that the composition works. At this time, on the project I usually work on the Base color channel since the other channels are not crucial on this moment.
Another thing that I like to do is work with fill layers and paint the masks, that way if you want to change the color to try another tone you can do it easily in the property fill. I consider this one of the good practices in substance so you can leave the paint layer for small details later on.
To add some texture to the base color, I duplicate the Fill layer and change the color to a darker tone to see the changes. Then I add a white mask and start to tweak it.
I like to add a generator with a mask editor, since it gives a really good base for a mask, and rise the ambient occlusion and curvature.
Then I add a sharpen filter to harden a little the edges of the color, and finally I add levels so I can invert the colors, here is the difference:
Here is the final the result (without the other colors):
Then I duplicate again the base color and chose a lighter color to add some light, I do this by adding a white mask and using the mask editor again. But this time I work with the textures too.
As you can see in the image I put the first texture on Multiply and the Texture 2 on add/sub, For the textures on this case I used ones that come from substance since it has a great library but you can import your own resources from File.
When I paint I like to add some contrast to the base to balance the output of color, to do this add a fill layer in soft light or overlay and modified it with the light generator, to give it some direction and degradation of it, the light generator usually I leave it on Divide.
For this part I recommend to use a normal layer, so you can paint it over, since you can pick the colors from the base created before with the brush. For the brush itself I usually tweak the flow and the stroke opacity and leave it at half.
Be sure to check that the two of them work with the pen pressure since by default is deactivated. Then on the properties tab I tend to use the spots brush and I change the alpha to dirty blurry dense. I found this to be one of the best option since is round but without a perfect shape.
As you can see on the layers on the image, the next step is to separate and change colors, dor the final layers, that are on top, the stroke opacity and flow tends to rise up, since the hard lights are on top of the surface.
Morever, in this case I have to use the blur filter so I coul give the Ice cream the fluffly look to the Ice Cream.
Aplication on the other Materials
For the rest of the items on this model I applied the same principles explained before. For the chocolate for example I created a Fill layer with a dark color and added a black mask, then I painted with white the with 0% hardness, until I got a ramp of browns as a result. Same with the strawberries.
For the wrapping paper, I used a stencil to write the letters on the paper using a Fill layer with a black mask, then on the brush I load my alpha and the paint on the position I want.
Working with another Maps
When you want to work the other maps like opacity or the roughtness, Create another layer that has that one active and the rest inactive, that way you can control better the results without worrying about the rest of the maps.
All in all, Substance Painter is a really powerful tool, that can be used for a great variety of projects. Being able to hand paint the textures directly on the texture sets, different from Zbrush that paints vertex or from Photoshop that does not allow you to see the model in 3D.
Good tool and Good luck.
Laura Usón is a 3D artist working at Polygonal Mind's in-house team.
Case study: Morphite
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 leaded 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 since 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 lowpoly look and colors
One of the reasons this game is made by big flat polygons is optimization, less polygons, less draw calls, also most of the models of the game doesn't have any textures so every color you see is a material, and every material changes its hue based on the planet you are visiting.
This is applied to animals, items, characters, trees, environment, 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, being able to visit an endless number of planets was also one of the most challenging ones, we started by creating boundaries on the exploration, meaning, inside a planet you can just walk or use land vehicles and the only way in or out of this planet is by using your drop pod, this allowed us to use a procedural level system like you would see in games like Diablo.
We had to be careful to make the terrain chunks connectors look natural so the player could not see them easily, but also they had to be fixed so we could add doors, walls and caves between them.
We also separated the terrain from the walls, allowing us make walls variations for each terrain chunk.
Thanks to this we could use the same terrain piece various times without feeling repetitive and also repurpose them as caves some times.
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 ton of them, but, also because the way we made them allowed us to mix between creatures and create easy variations.
After deciding what need to be done we used Zbrush to make the basic body shape.
Used ZSpheres to make a quick topology.
Maya to separate the body parts, fix the topology, add materials and ready for Unity!
Having the animal broken down into separated parts allowed us to make new animals out of already done animals parts, make body parts variations and also saved us some skin weighting time.
Most of the wild life 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 them planets that are a result of a collaboration between the whole team and a well defined workflow, even though we all worked on remote.
First the awesome level designer Mike Madden, made a blockout of the level with cubes inside Unity.
Then we took those cubes into Maya, and organise them into regions.
Afterwards we take every region to Zbrush, and using Dynamesh we are able to sculpt the terrain out of those blocks.
Using Decimation Master we reduced the polycount of the terrain to a desired amount and export back to Maya
We used Maya to fix the non-good looking topology that polygon reduction tools like Decimation Master usually make, plus adding some special details that are easier to be done on a polygonal modelling software.
Also adding materials and exporting all as separated FBX files.
Now time to import the terrain into Unity so the game designer and the programmer can add functionality to the level.
Morphite went out on iOS on 20/09/2017 as a premium game. With a great Appstore feature for 2 weeks.
Having a total of 41000 purchases that generated more than $200000 in revenue.
Months later it was released on Android as a free game with in app purchases.
Having more than a million downloads that generated more than $40000 in revenue.
The game was also ported for Steam PC by We're five games team.
And it got 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, but because it has an endless amount of them!
On this case study I focused on the most relevant parts when it comes to the visual side of the game but there is way more to cover like procedural space stations, vendors, ships, humanoids, side quest...
This game was made by a remote team, working on different time zones and continents through collaboration and dedication, and I'm really proud of all the work the managed to ship.
Daniel García is the founder and creative director at Polygonal Mind.
Have a cool project you'd like to discuss?
Let's talk about it!
This post is about a mobile premium game we are developing in-house, called Ma'kiwis.
Long story short, Ma'kiwis is a adventure game for mobile devices where you play as a shaman leading mini tribe people to safety.
This week sprint was about adding few items to the game and make the firsts cutscenes into the game, so we could start testing the game workflow with them inside the game. I was assigned to work on the cutscenes that gives the player an introduction to the game's plot and gameplay, basically the tutorial.
Story boards of the cut-scenes in Level 1
Maya animations + Unity's Animation System was too messy
After trying for a few days I felt the system we were using previously was a bit limiting and it wasn't letting me do basic things like blend the cameras or time events like camera shakes or starting and stopping Particle Systems. We even had to animate the character interaction together as a single GameObject using Unity's Animation system.
The thing I disliked the most of this previous system was the inability to blend between pre-fixed cameras.
This meant that we couldn't go back to the Main Gameplay Camera after a cutscene which resulted in cuts every single time; either that or fades to black. This felt too repetitive in my opinion since there are a lot of other camera cuts when simple events occur ingame, like activating a switch or picking up a collectible. I wanted something a bit more dynamic that attracted the player's attention, hence the blending between cameras was really needed.
After talking with the rest of the team, we decided to upgrade the current Unity version we were using e (from 5.6.4f1 to 2018.2.0f2) so we could use the Timeline (Timeline was included in Unity 2017.1) + Cinemachine.
Example of the Popping problem when using Animator
Cinemachine is a free Asset developed by Unity that brings a lot more of freedom and a more cinematic look to the Unity camera system, allowing you to control the Field of View, Depth of Field, Camera Collision and the so needed blending between cameras, among other great features.
Cinemachine + Timeline is a very powerful combination!
This is done because we actually blend between the Main Camera to the position of the Cutscene Camera, which caused a stutter because of the Following script wanting to go back to the gameplay position. Basically there were two parts telling the camera what to do: the Following script was telling it to stay aiming for the player and the Gameplay one (which we were blending to) was telling it to follow the spline/bezier until the position was the Cut-scene cam position.
This way we always have the position of where the camera should be during gameplay to blend back after a Cutscene.
Another possible solution could be to have a Master Camera and using the Gameplay Camera as a Cutscene one, so the Master could blend between them without stutter, but that would've meant that the whole camera system would have to be changed and we couldn't afford that.
Hope my struggle with the cutscenes can help someone. :)
Alex Bielsa is a junior 3D artist working at Polygonal Mind's in-house team.
Hello there, for those who doesn't know me my name is A. Daniel García Aranda and I'm one of the co-founders of Polygonal Mind, and now it's sole owner.
This is meant to be the first blog post and I'm going to talk you about the company journey from day -1 to the present day, what drove us to start a business and why we made the decisions we made on the go.
Last year my friend Jesus and I were working at Imascono, a Spanish augmented reality start-up, we both liked our job there, but we always loved video games and we both felt AR wasn't that fulfilling anymore.
On our daily work breaks and the time we spent playing video games together we spoke a lot about making our own project, until it finally happened, we started our own project on our free time.
Since the start we were really passionate about it, we couldn't wait to finish our morning jobs and come back home to work on our personal project, this obliviously had consequences, we started to show less and less interest on our AR jobs and everyone at the office saw it except us.
Some weeks later Jesus contract with Imascono ended.
And a couple of weeks later in March of 2015 I was fired.
The waking up months.
Both of us have programming background and both of us don't really enjoy to code that much, but since Jesus had more experience than I did he took the coder role and I took the artistic side of the project.
Meanwhile we did our research about how to create a company outside Spain and I must say, if there is something we did right from the beginning, this is it. Maybe in the future I write about why we made this choice.
On August we procrastinated a lot and from this month forward Just Leaping was starting to become a car stuck in the sand, the problem was that we were in the middle of the desert and we didn't even noticed.
Finally on October of 2015 Polygonal Mind was founded.
2016 started and we did an annual review about the business and the game and what once it was all positivism and confidence, it was all gone, I think we both knew at that point that the project was not going to make it to the stores anytime soon, but after some talking we promised ourselves that we were going to release the game and that we did learn A LOT through 2015 and the final price was worth it.
I was quite motivated myself since I was moving to London with my girlfriend for at least 3 months on March 17th, I wanted assist some events to do networking and making things actually happen, so I had the idea of looking for a publisher to help us finish our game and make some bucks. I spoke with Jesus about it, but he didn't liked the idea that much, he reminded me that we agreed on doing it all by ourselves from the beginning. Also bringing in a publisher would add more months of work to Just Leaping and that was something we didn't liked at all. This conversation was a break point for us, on one side I wanted to make profit with our almost a year of development, on the other side, Jesus didn't care about that stuff anymore, he was really tired about the project, he just wanted it to finish, codding was never his favourite skill and he was getting really sick of it. This made him re-think about everything we were actually doing and if that was his actual goal after 11 months of development.
A couple of weeks later Jesus told me he wanted out, out of the project and out of the company we both created. After talking about it I understood that coding was really stressing him and that his life goals changed over the course of the year, although we both wanted to finish the project we started, we could not do it together as a team, we both agreed that we needed to go separated ways.
He was burned out and I cannot blame him since I was feeling the same thing.
After reading this books in a couple of days I decided to start take action, so I bought a cheaper Graphic card on amazon and started to make 3D the next day. I understood that I can't do video games on my own and I don't want to work for another company but mine. That's why Polygonal Mind needed to pivot in another direction that could fit my skills, a 3D design studio.
Why did I took this decision? Well, one of the reasons of starting Polygonal Mind was to make the products that we could be proud of saying that are ours, we deeply believed that we could do better on our own than for working for others ad by doing so we were going to learn way more. Somehow we both lost our path to this great idea we had the day -1, and it took me months to see the way back to it, now my real goal is to keep this ideals alive every day, no matter what .
After this huge step back to my mental canvas, I started to make more changes on the company, I made this website and started to network with more confidence .
Three weeks later I started to have some clients and started to work on Morphite with Crescent Moon Games and We're Five Games.
So what's going on now?
Now, I'm cleaning up minor projects to be able to start sharing more about my artwork and my path to become the best 3D company around, it's gonna be one hell of a ride :)
Jesus now is improving his 3D modelling skills, and he never typed a line of code since May.
As for Just leaping, the game development is stopped, we haven't work anymore on it, but as for the characters I have a couple of cool projects on my mind, but I still can't say anything about it.
Also I wanna thank you for reading my history, it took me forever to write this post, due it's sentimental value.
I know it's a long read and I had to cut some of the content to not make it a super large post, so if there is anything you would like to ask, feel free to do it and I will be glad to answer :)