Jean Zoudi has shared a breakdown of the Harrier Du Bois project, explaining how the body and outfit were modeled, sharing his workflow behind the character's hairstyle and facial hair, and detailing the rendering process.
In case you missed it
You may found these article interesting
Hello there! My name is Jean Zoudi, I’m a French Character Artist in the games industry.
I started learning 3D about 8 years ago just before entering a 3D art school and then working in an indie studio in Strasbourg (Neuronality). After that, I moved to the UK to join Supermassive Games studio, where I’m currently working as a Character Artist.
Personal projects have always been a very important part of my development as an artist. I’m pretty confident that most of my skills come from personal work and trying new ways to create nice characters from challenging concepts or games that I liked.
The most important part for me is to find a concept or reference that really inspires and motivates me since creating a full character usually implies working on the same project for a fairly long time.
The Harrier du Bois Project
Disco Elysium is one of the most interesting games I’ve ever played. The moment I knew I wanted to work on a Disco Elysium-related project was when I listened to “Instrument of Surrender” again about a year after I finished the game, it just brought back amazing memories! I was also very keen on the idea of working on a character whom you never get a very clear look at. There’s a big freedom of personal interpretation to explore.
From there, Harrier the main character was an obvious choice, so I started gathering references from the game’s incredible illustrations and concepts and actively thinking about my interpretation of that character.
From the beginning, I knew I wanted to be able to give that character different emotions and poses to the face while keeping the facial hair in place with the deformations. That was a very good reason to use MetaHuman as a base for the head, so I opened MetaHuman Editor and started playing around with the settings to get a result as close as possible to what I had in mind. I didn’t have any specific head reference as I wanted to avoid him looking like someone else and rather make him closer to the original illustrations, at least from my own perspective.
In my opinion, MetaHuman Editor is still pretty limited and makes it very tricky to get rough and coarse facial features (however, it's still a very impressive tool).
I exported my MetaHuman to Maya with Quixel Bridge and from there re-exported it to ZBrush to start sculpting a proper head that would fit Harry’s peculiar look and hopefully steer away from the recognizable "MetaHuman look". I also added some details and imperfections to the high poly version of that blend shape to be baked later in Substance 3D Painter and I made a blockout for the hair and mustache as well.
Once the sculpt was finished, I applied the sculpted head to the MetaHuman as a blend shape, then I imported the head as well as the MetaHuman textures into Substance 3D Painter. From there, I added a lot of details, color variations, imperfections, pimples, veins, eyebrows, etc. to the skin to make it look rougher and more natural.
Eventually, I imported my head in UE5 and applied the textures to the MetaHuman shaders that I tweaked as well to match the result I was aiming for.
A little disclaimer here, you might want to go for the Mesh to MetaHuman workflow to save you some headaches with the blend shapes and import/export to UE. The only downside is that the result doesn’t perfectly match your sculpt, and sometimes kinda smoothes out the head which I didn’t want.
I decided to create the hair using XGen because I believe strand-based hair is the natural evolution for real-time hair in games (a few games are already using this technology) and I find it a little less tedious than the hair cards workflow, even if XGen is still pretty unstable and a lot of stuff can easily break which is really frustrating.
My workflow is quite simple, creating a scalp, placing guides, and adding modifiers such as Clumping, Cut, Coil, and Noise. I try to keep everything working with XGen Core but once I’m happy with the result, I convert my groom into xGen Interactive and fix/refine some strands if needed. I learned a lot from Hadi Karimi’s incredible work with XGen Core.
After that, I simply exported the groom as an Alembic cache.
Body and Outfit
For the body part, I again worked from the MetaHuman body and sculpted it to match Harry’s proportions. My main ref was a great concept for the game with the indications "kinda flabby chest but strong arms, long thin legs, and bulky torso." That helped me a lot.
From there I started blocking out the outfit in ZBrush and a bit in Maya. I sculpted a proxy mesh with no thickness that I imported in Marvelous Designer and used as a base for the simulation.
I usually don’t spend too much time in MD because I find it much quicker to fix and add folds in ZBrush so I just simulated the clothes to get the main shapes and folds right and imported everything in ZBrush. Next, I duplicated the costume and ZRemeshed each part to get a better topology to work from, then projected the Marvelous meshes on the ZRemeshed ones.
After that, I added some thickness using the EdgeLoop tool and began sculpting the high poly outfit. Once the sculpt was finished I added the accessories like the tie, trouser straps, belt, shoes, and buttons that I mostly modeled in Maya/ZModeler.
Here comes the least fun part for me – retopology. It’s obviously a very important part of real-time characters that must not be overlooked since it will impact a lot of the UVs, rig, and rendering later. No real shortcuts here, I just imported each part of the outfit with Subdivision level 3/4 in Maya and used QuadDraw to make my low poly meshes, one face at a time. I made sure the edges followed the seams of the clothes and I kept the thickness where it would be visible and added caps to the hidden areas like the inside of the sleeves, collars, etc.
With a good topology, unwrapping the mesh is very straightforward, the important thing to keep in mind is how you want the textures and tileables to apply to your models, especially for clothes.
Texturing the Outfit
In Substance 3D Painter, I imported the whole character with proper naming (_low and _high) and started baking each part using the "by mesh name" option. The result was good overall, I fixed a couple of small artifacts in Photoshop to save some time and proceeded to the texturing.
I like to start with organizing my textures by creating a base fill layer in a masked folder for each part of the character, it also allows me to have a clear view of the colors without details.
From there I started adding a few base materials that I tweaked to match my refs, and lots of fill layers on top with fill masks of different blend modes, the idea is always to break the redundancy of tileables and get a natural result.
Observation is the key here, trying to understand how the materials interact and get dirty/worn out. I tried to imagine how Harry’s clothes would be after days of depravity and electrochemistry-guided behavior! I implemented the stitches directly into the textures since I would mainly use 4K textures for the renders, but that’s something to avoid with lower-res textures.
I always try to keep the textures procedural as much as possible so I have control if I need to change something, but some layers have to be painted by hand like tears in the fabric or the patterns on the tie on which I used deliberate brushstrokes and a few alphas.
Once the Harrier model and textures were done I imported everything in UE5 and set the shaders and textures up for rendering. After lots of tweaking and back and forth between Maya/Substance/UE, it started to look as I wanted so I just needed a pose for the character.
For the head, I used the MetaHuman rig I talked about earlier and imported a pose for the skeletal mesh head. I wanted the main pose to feel quite serious with a touch of sadness in the eyes as I think most of the game feels that way. I also added a couple more poses, one with the famous "Expression" and the other with simple happiness.
The body was a bit different since I didn’t want to rig the outfit, I decided to use ZBrush’s Transpose Master to easily create a pose using masking and rotations on a merged model and then transfer back it to the original separated meshes. I was just careful not to move the transition part between the chest and head so it wouldn’t become a hassle to match again.
Next, I imported my groom into UE5 with the groom and alembic plugins enabled. I created "groom bindings" to bind the hair caches to the head rig, so it would deform nicely with the different expressions without any clipping.
Eventually, I decided to add the Gauntlet from the game to give the character some extra detail, so I just modeled it in Maya and textured it in a simple way, I wanted the material to look a bit like the Stormtrooper armor so a kind of white plastic/metal, with some dirt and mud. I also quickly made a cigarette that would match the pose and the character.
The final steps were to add a plane for the ground that reminds me of the Whirling-in-Rags hotel room with a material I grabbed from Quixel and then basic lighting to the scene. It’s pretty much 3-point lighting, with some extra point lights for touches of colors that made me think of incredible psychological traits illustrations in Disco Elysium.
This project was amazing to work on and allowed me to learn new stuff so I’m glad I finished it. It actually took quite a while since I started it about 7 months ago and just left it there, then decided to go back to it last month in my spare time. So in total, I guess it took about 4 full-time work weeks.
The biggest challenges probably were to figure out a way to keep the MH rig working with the blend shape and changes, create a nice suede-ish material for the jacket and get the hair, mustache, and beard to look good (even if it could be improved, in my opinion).
My advice for aspiring character artists would be to keep working (I know not very surprising) and create characters you really like, I’d recommend not to use your own designs if you want to skill up quickly because it’s a whole different skill set being a good character designer. Find a character that inspires you and jump in, make mistakes, don’t try to take too many shortcuts, and ask for feedback. Take your time and you’ll see the results!