Juliana Vidal explained how the adorable Catfish Guard was created, showed the sculpting process in ZBrush, and shared how the glossy look was made.
Introduction
Greetings everyone! My name is Juliana Vidal, and I am a 3D Artist living in Vancouver, BC. I was born in Brazil, but moved to Canada in 2017 after finishing my bachelor's degree in Design, with the goal of pursuing studies in Game Art.
I am very passionate about art; from an early age, I was always sketching and drawing my favourite game and cartoon characters. Since then, I have tried all sorts of media to draw and paint traditionally, which was mostly self-taught. Around 2012, I received my very first Wacom tablet as a gift, and I couldn't be happier to start drawing/painting digitally!
In university, I had one class on 3D, and that was the most fun class out of all of them. Since then, I knew what I wanted for my future. I started doing some research on schools that had programs in 3D, mostly for games, and I found one in Canada that became my goal.
After finishing my Game Art program in Canada, I acquired a lot of valuable experience. I worked in a small game studio and afterwards in VFX companies, such as Scanline and Framestore. I had the opportunity to work on projects like Wonka, Barbie, and Monarch Legends of Monsters. It was a significant switch from games to film, but the switch made it clear that I preferred working in film.
To improve my skillset and understand film workflows even better, I decided to enroll at Think Tank Training Centre. I chose the Characters and Creatures for film course as my path, and it has been great so far.
Catfish Guard
The Catfish Guard is my intermediate final project, where I had about 5 weeks to complete a full-body character. This project is the culmination of skills I learned during the term, where I utilized various tools/programs, as well as a fun concept by Rudy Siswanto.
To begin with, I had to search for concepts that I really liked, but finding one that would be feasible to create in 5 weeks proved challenging. Once I got the approval for my chosen concept from the supervisor, I started gathering references that were relevant to the Catfish.
Since my focus with this project was to lean towards a realistic look, I decided to search for real-life images. I gathered several photos of catfish to see all the details, such as the skin, fins, eyes, and lips. For the accessories, I grouped them separately in the PureRef file to help keep my references organized.
These references helped me most with the texturing part of the project, so I could have a better understanding of the materials.
Modeling
The project began with the body sculpt in ZBrush. I usually start with a PolySphere at a very low polycount, which allows for better control over the mesh. The first thing I was aiming to achieve here was the main silhouette of the catfish, so I could move on with refining the sculpt. I used DynaMesh as I was shaping the body, because the polysphere was very low-res, and as I was adding and moving parts, I needed to distribute the geometry a bit better.
Once I was satisfied with the main shape and proportions, I used ZRemesher to get a cleaner geometry in order to work more on secondary shapes. I duplicated the initial body mesh and performed the ZRemesher on the copy. After that was done, I projected the geometry details using the previously DynaMeshed model onto the new mesh.
Now that I had the remeshed model, I was able to add more sculpt details and work on the muscles, fat, and also the fins. I mainly sculpted using ClayBuildup and DamStandard, which are default brushes included in ZBrush, but very powerful and useful for this kind of work. Sometimes I would need to smooth certain areas, so I decreased the intensity of the Smooth brush to ensure that I didn’t lose too much sculpt detail in certain parts
Before I moved on to adding more sculpt detail, I started modeling the ropes and accessories in Maya. For the ropes specifically, I used the curve tool along with live surface to draw where the ropes would be on the character's body. The live surface is a very handy tool; it allowed me to place the curves right on top of the body mesh. After I was done placing the curves, it was time to create the ropes, and the method I used was with the Sweep Mesh tool. I could change the parameters, adjusting accordingly, doing my best to match the concept and references.
Aside from the rope, I modeled the other accessories, such as the weapon, metallic details, and wire spool. For the clothing, I just blocked in some planes as placeholders, since I was planning to create those in Marvelous Designer.
To continue working on the sculpt more accurately, I imported all the accessories I modeled into ZBrush. This way, using the body's lowest subdivision, I could adjust the proportions to be more accurate as needed. From now on, I was mostly going into tertiary shapes and details, adding more muscle and fat detailing, as well as some wrinkles. For those smaller details, I kept on using the ClayBuildup and DamStandard brushes, but this time, with a lower intensity for more control.
After doing a lot of work on the character's sculpt, I imported a high-poly version of the character into Maya in order to retopologize it for better topology/edge flow. This step was done using Live Surface and Quad Draw. I took the opportunity, once finished, to UV unwrap the body.
Marvelous Designer
For this step, I used a technique that's similar to creating curtains inside Marvelous Designer. I used the curves to draw the details of the cloth, especially the parts that have cuts or tears.
I imported the clothing parts separately inside Maya, and used the Quad Draw and live surface to create better topology for the meshes. Since Marvelous Designer creates geometry with UVs by default, I used the Transfer Attribute tool to transfer the UVs and the high-poly details for the folding after subdividing the newly retopologized mesh.
Afterwards, I imported the clothing into ZBrush and used a plugin called Extrude Keep Subdiv to add thickness to the cloth without deleting the existing subdivision.
Topology & UVs
After finishing all the sculpting and high-poly details, I went back into Maya to organize the meshes and UV unwrap them. Since I already had the retopologized mesh done for everything, all I had to do was prepare the model for texturing.
I separated the UDIMs according to materials, and for the body especially, I had it mirrored so it would be easier for me to mirror the texture to the other side in Mari. Because of the mirrored body UVs, the workflow became much easier and smoother.
Texturing
From the start of the project, I was exploring all kinds of tools, and it was no different for the texturing. As an aspiring character artist, I decided to improve my organic texturing inside Mari, so the body and eyes were textured there. For the accessories, clothing, and weapon, however, I used Substance 3D Painter.
Catfish Body
Mari is a great tool for organic texturing, and I was able to achieve all kinds of variations on the skin. Many textures, such as grunges and dirt maps, were used to achieve fine detail. I used the node graph workflow Mari has; it was a great learning experience for me, especially because I was able to get more comfortable with the program as a result.
For the Catfish, I imagined he just came out of the water, so it was essential to have him look shiny and wet overall. To create the roughness/glossiness map, I started out by making the Diffuse grayscale, and I then used the different masks I painted to add some more variation in the specular in different areas.
In Substance 3D Painter, I imported all the meshes that I hadn’t worked on in Mari. I put each object into its own folder to keep things organized, as it would be easy to get lost with so many layers visible at once.
For the ropes, I was also aiming to get a look similar to my reference images. However, I was influenced by the look of the rope in the concept, so I added some green details to it, which gave it a bit of a ‘mossy/seaweed’ look. For the metallic props, I looked at a lot of reference photos for each part. For instance, the weapon design is very comparable to a Naginata (Japanese spear), so I collected images of that as my guide. The metal was a mixture of grunges and dirt, as well as metallic and roughness variations in certain areas.
The cloth was a bit challenging, since, based on the concept, it had some kind of blood stains on it. I did my best to get that dried blood look to it, blended with the purple colour of the fabric. Later on, I was able to adjust that during lookdev.
Lookdev & Rendering in V-Ray
I created 2 different light setups for this project. The first one was a more ‘cinematic’ look, which included the wooden pier, V-Ray’s environmental fog, and some light sources placed around. These were really important to achieve a closer look at the concept, and the addition of the fog resulted in a more dramatic atmosphere.
My other setup was a studio HDRI, which was part of my standard lookdev scene. I included the gray and chrome sphere, as well as the color checker chart.
Using V-Ray was a great learning experience as it was a new rendering tool for me, since I mostly used Arnold in the past. I did some tweaks and adjustments for some of my textures using the shader nodes, such as colour correction and value changes. The displacement maps were also controlled in the V-Ray settings, and I found myself adjusting the intensities of them there.
Nuke
Inside Nuke, I tweaked some aspects of the rendered images, such as the colour and contrast. I even added some glow effects for the cinematic shot. For the glow effect specifically, I used a gizmo called ‘Expoglow’. I masked around the catfish using rotopaint and feathered the mask with a blur. This gave a very interesting look to the cinematic render.
For the turntable itself, I did similar adjustments, however, mostly on the contrast, gain, and colour. I also applied the ‘retime’ node to ensure the turntable wouldn’t be too fast, as I only rendered 48 frames. Besides that, I included some close-up renders of the studio scene as well.
Conclusion
I really enjoyed working on this project; however, the biggest challenge was the limited time. But at the same time, the time constraint helped me manage my schedule, so I followed it diligently. Fortunately, the modeling part was done before the allotted time on my schedule, so I could spend a lot of time working on the textures until I was happy with how they looked. There are aspects I would like to improve on in future projects, especially in terms of texturing and lookdev, so I will definitely focus on those points next time to get even better.
My advice to beginners is to see what you like the most and what inspires you. Once you have a goal, focus on that, experiment with all sorts of tools and techniques, and see what senior artists do and use that as an example. There are tons of materials and tutorials online, so it’s very important that you are proactive and check those out. And most importantly, don’t be afraid to make mistakes; you might feel like it’s not looking good sometimes, but keep trying and do your best each time, and you will see the improvement happening. Perseverance is key when it comes to this.
Finally, I would like to express my gratitude to my supervisor, Claudio Tumiati, for all the valuable feedback and guidance throughout the project, as well as my classmates and friends at Think Tank for all the support. Thank you, everyone!