July 23, 2019

How to make a stylized game character in Blender

I finished my first ever stylized character for games. Her name is Madeliefje and I decided to make her so I could participate in a so-called draw-this-in-your-style-challenge. This is a popular challenge on Instagram where an artist uploads an artwork and then the community will remake that artwork but with their own personal style. I didn't have a style because this was my first character, but I've always wanted to learn how to make a stylized character, so I decided to give it a go. Stylized art is the same art-style you can find in games like Fortnite. This is the original artwork by Madeleine Bellwoar:

Now this was my first character, so to learn how to make a character in Blender I found this tutorial: CGC Classic: Female Character Modeling. And if you finish it you end up with something that should be a good start you can continue from to make it your own character. I wanted to make a stylized character and they tend to have bigger eyes and smaller eye-lids, and this character also has elf-ears, so I added that and ended up with this:

Next up was hair. The original character has long hair, which is not a good idea in games because it's difficult to animate, so I decided to give her a pony-tail. Now there are several ways to make hair in 3d, but I needed to make stylized hair, and this is an excellent tutorial on the subject: How to Model Cartoon-Style Hair in Blender - Bezier Curves Tutorial. I separated the hair into two major parts because it was easier to control with the bezier curves, so the pony-tail consists of three pieces which are not connected to the head pieces, but the missing connection is not visible because of the scrunchie.

To make good-looking eyes I found this tutorial: How to Model, Light, Texture, Bake & Rig eyes in Blender. The eyes were actually the hardest part - or rather the appearance of the eyes in relation to the head. Stylized eyes are larger than normal eyes, but when you add larger eyes the character may sometimes look like the eyes are popping out of the head, so I had to spend a lot of time adjusting the size of the eyes, the size of the pupils, the position of the eye-lids, and so on. It was also fun to rig the eyes to make it easier to control them:

In the original image you can see that she's wearing a skirt, but skirts are kinda tricky to animate, so I replaced the skirt with pants. The idea behind the pants is that she has folded them up so I had to add many creases to the pants to give them the correct shape. Blender has a sculpting tool so I used a crease brush, and the pants were actually the only part I sculpted - the other parts were just moving one vertex after the other. Speaking of moving vertices, the top in the original image consists of leaves and the top was the most time-consuming part of the character. I first tried to sculpt the leaf-top with a leaf-brush but it didn't work. Then I tried to add the leaves with a particle system, but it didn't work. So I had to place all 300+ leaves one-by one:

We can't see the bottom of the character in the original image, so I gave her boots. And I also replaced her diadem with butterfly antennae, because the diadem I first made didn't look good. The main character is now finished. But I also wanted to make it game-ready, meaning reducing the amount of vertices by baking textures onto a character that looks the same but has fewer vertices, and then you end up with a texture sheet looking like this:

Most of the ambient occlusion shadows in the above texture sheet are generated automatically by Blender, but I had to clean them up by vertex-painting. At the same time I also painted her lips and gave her face a slightly red color, so the entire skin is not looking the same. Most humans have a slight tone of red in the face, but also some yellowish and bluish colors, so you have to experiment with what looks good. An excellent tutorial on how to use textures baked by Blender to make stylized textures is: Learn Sculpting by Creating Game Assets. I also had to make a specularity texture, which tells which part of the character should be reflective, such as the boots, and which should be not, such as the pants. Then I rigged the character with a simple rig to be able to move her legs and arms to easier change her pose. This is the final result:

But the idea behind the original character is that she's responsible for growing plants during spring time. So I thought it would be an excellent idea to practice making foliage. I've earlier tried to replicate the trees from the Witness game, so I had some experience, and I also found this video on how to make plants for games: How to make stylized plants and grass. The basic idea is that you first make a high-polygon plant and then you bake the high-polygon model to a flat-plane. It looks like this:

And if you do some painting the texture will look like this:

Then you cut the plane around the individual plants and move the vertices to make the flat mesh more three-dimensional. These flat meshes are called cards. The problem is that they look the same from both sides but it's generally not a problem. For example, you never see the bottom of the plant to the left so you never notice that the upper part is the same as the bottom part:

To make a forest scene, you add a flat mesh with many vertices, and then you use Blender's weight-paint tool to give each vertex a weight, which controls if you want a specific plant to appear around that vertex. Then you use a particle system to place the plants, so you don't have to place each piece of grass by yourself. You can also use weight-paint to control the length of each plant. This will require a lot of painting and re-painting until it looks good and no plant intersects with another plant. This was an early test (the plants are smaller along the border and this is controlled by weight-painting):

In the original image you can also see there's some kind of stone-bench. So I googled for some reference images and ended up with this:

I used a stone brush to paint the different colors of the bench and I think the result was better than expected. So I was a little sad when most of the bench in the final scene is hidden by the foliage, but I guess that's how it is. Anyway, this is the final render which took about 90 minutes for the computer to generate. 

The time it takes to generate a final image is one of the struggles with 3d. Yes, you can generate images with lower resolution and quality which is faster, but sometimes you find something that bothers you in the image with the highest resolution. Then you make that small change and have to wait another 90 minutes for the new image to render. For example, I made some tests from other angles, so there were many 90-minutes of waiting periods. And I have just one computer and rendering images takes up almost all power, so even surfing the web was a struggle during the waiting times:

But that's not it! In the original image you can see some greenish smoke. Blender can generate volumetric smoke, but when I tested it, it was difficult to control how the smoke looked and it would take like 5 hours to generate the final image with smoke, so it took far too long. Notice that this is not the same grayish mist you can see in the rendered image - it takes zero time to generate. Instead I decided to learn some post-processing in Krita. This is an excellent tutorial on the subject: Post-processing for Dummies in Under 12 Minutes - Blender and Krita Tutorial. And the final image looks like this:

In the end it took some weeks to learn all these things, but when I make the next character it will hopefully be a much faster process.

This project is also my first project on Artstation, so go there and like it if you like it.