Tom Jordan provided us with a detailed breakdown of the Murloc project, created using ZBrush, Maya, and Substance 3D Painter. He shared detailed steps from the modeling workflow, covering the eyes and "hair" tentacles, the weapon, and texturing, focusing on the dart frog-type skin and the tongue.
Introduction
Hi, my name is Tom Jordan, and I've been a 3D Modeler since 1997. I am from a small town in Texas (Nederland), and I'd never heard of any real art schools growing up, but the Art Institute representatives came to my high school in the 90s, and I got this wild idea that I could do art instead of working at an oil refinery like everyone else in my town. I convinced my parents to allow me to go to the Art Institute of Houston and study illustration. When I got there for orientation, I sat through the illustration program presentation. But, across the hall, they had a video running of some very primitive 3D graphics. I was enamoured. The video was part of the orientation for Computer Animation — a brand-new program the school was offering. I immediately changed my focus to this new program.
Why change now? Well, I loved Nintendo games and visual effects, Star Wars, Star Trek, etc. I always wanted a computer at home, and my parents had gotten me a second-hand Tandy 1000 computer a few years earlier. It had a paint program similar to MS Paint, which I loved. I spent hours making pixel art for fun, but I hadn't imagined it as a career, really. Toy Story 1 had come out the year I graduated high school, and 3D seemed like magic at the time, a huge leap from the pixel graphics I loved. So, art on the computer seemed like the perfect choice for me.
In the 90s, 3D software was primitive, and my first tools were 3D Studio R4, 3D Studio Max version 1, and, importantly, Lightwave 3D. In those days, Lightwave was hot in the same way Blender or Unreal is now — it was a game changer. Though I technically went to school with a major in Computer Animation, it was too new a program to teach, and our instructors were learning while teaching us. The real value at AIH came from traditional art and illustration courses like figure drawing and perspective. I finished a two-year degree there and got a job at a startup game company, which failed within six months.
It was a rough time. But after a few months, I got a call from a good friend and former classmate, AJ Vanek, who connected me with a small software company he worked for, whose focus was 3D modeling presentations for the oil and gas industry. I got an interview and met the creative director, William Vaughan, for the first time. [Since then, Will has made a name for himself as an exceptional 3D educator.]
The interview went well, but I did not know Lightwave, which they used exclusively. They gave me a test — I had to build 20 models over 1 weekend, in Lightwave, and turn them in for review. The model list included things like a sheep, a parrot, a helicopter, etc. — various props and animals. Needless to say, it was one hard weekend. I wanted to make an impression, but there was no YouTube yet, or really any internet at that point for what I needed. I remember calling one of the guys at the studio, desperate for help, since I'd made a helicopter, but I didn't know how to mirror geometry — I'd made both sides manually, and I was losing my mind. But I did turn in my 20 models, and they hired me. The company was called Epic Software Group (NOT Epic Games) — a tiny multimedia company in Houston — and one of my first jobs there was helping to create a model library for Newtek, creators of Lightwave.
The two years I spent there learning from Will Vaughan were the foundation of my modeling skills. I specifically remember a moment working on the model library when everything mentally 'clicked', and I had this wonderful and naive notion that "I can model anything." It wasn't literally true, but it felt very real. It was a critical moment of clarity.
My experience there ended in 2000, when Will and I both decided to leave and start new journeys. He founded 6 Foot Studios at that time, which I believe he later left for other ventures. But, I applied to a small animation company in Dallas, Texas called DNA Productions. They sent me a test for a film they were working on — a cartoony background character in their style, in Lightwave. I found the test incredibly easy after the nonstop modeling I'd been doing at my previous job, and completed the test in 4 hours. I turned it in, they hired me, and I moved to Dallas to work on my first film, Jimmy Neutron: Boy Genius. On that show, I was a character modeler, and I got to make Jimmy himself, Jimmy's Mom, Sheen, and many others. Working at DNA seems like a dream now. It was a perfect place. I met so many amazing artists, and in a lot of ways, it felt like a college dorm experience — practical jokes, everyone fresh out of school and learning, making cartoons.
Now I'll fast forward —
After Jimmy Neutron, I worked on the TV series The Adventures of Jimmy Neutron: Boy Genius for three seasons, followed by The Ant Bully film, after which DNA unfortunately closed. About six months later, I got a job at another local animation studio — Reel FX, in 2006, where I worked up until March of this year for a total of 18 years. Over the course of my time at Reel FX, my primary software was Modo, which was the successor to Lightwave, and Maya. I did not learn ZBrush till around 2011, with ZBrush version 4. During my tenure at Reel FX, I worked on many films and shorts as Modeling Supervisor, which are listed here and here, though the highlights for me are Free Birds (2013), The Book of Life (2014), SCOOB! (2020), and Back to the Outback (2021).
The latest project I completed this year is The SpongeBob Movie: Search for SquarePants, as Modeling Supervisor, for Paramount. It will be released in theaters this December (2025).
About The Murloc Project
I decided to stream ZBrush on Twitch. Why? Well, watching someone sculpt in ZBrush isn't exactly riveting, but I found that it helped me stay focused. I like the interaction with other artists in chat while I work; it's nice. The Murloc started as a fun warm-up exercise. Murlocs are a basic monster in World of Warcraft, and I'm a big fan of Blizzard games. They are goofy fish creatures, and I thought it would be fun to make a more detailed version in ZBrush. The more I worked on it, the more fun I was having, and I pivoted to using it as a tool to learn Substance 3D Painter. Murlocs are hairless fish men, so I could focus on skin and things like that instead of getting caught up in cloth and hair.
The main reference I used was a Hearthstone card called "Everyfin Is Awesome", painted by Andrius Matijoshius for Blizzard. I liked the anatomy and the more vicious version he painted, though I did reference other Murloc artwork and the actual Murloc 3D asset from WoW.
For the skin, I didn't want to go full fish scales, since Murlocs have more of a fleshy feeling. Instead, I referenced poison dart frog skin for the small details. The skin is almost like the skin of an orange, with small black dots. I love that contrast of orange and black in the dart frogs.
I didn't use the art reference verbatim, as you can see with the eyes, and some of the facial proportions. Murlocs traditionally are very wall-eyed, and that looked a bit too silly in 3D to me, and the card art had more of a feral look.
These are Blizzard Copyright for WoW, murloc assets.
The Murloc started as a warm-up exercise. And that warm-up was not pretty yet, lol. I started with a sphere and just kept going. Here is how he looked after the first couple of hours —
I kept laughing as I was sculpting. It's in my Twitch VODs here. In fact, much of this character's process is documented in my Twitch VODs.
Modeling
Workflow
The workflow for modeling the Murloc:
- I started from a sphere in ZBrush and sculpted a bust.
- I then decided to make this a full project, so I built out the rest of the body in ZBrush.
- I added spheres and moved/scaled them to block in the limbs, then Dynameshed them.
- Once I had a rough dynamesh object, I ZRemeshed to get a better sculpting surface topology, and projected on the Dynamesh details.
- I continued adding detail and anatomy in the sculpt for the secondary forms.
- The sculpt was more or less complete at this point, but without any skin details.
- I paused in ZBrush and retopologized the model in Maya using Quad Draw. After the retopo, I laid out UVs across 10 UDIMS — 7 for the body, and 3 for teeth, tentacles, etc.
- I then brought the retopoed model back into ZBrush and reprojected all the sculpted details onto each "good" mesh.
- Now I was ready to go to Substance 3D Painter. I exported my model as a decimated mesh with UVs intact using the Flipped Normals method here.
- This method allows you to see your secondary forms in Substance, which is great. Substance can't subdivide geometry, so any displacements in Substance don't show the real depth. By working on a decimated mesh, I could see the forms that would later be represented in Maya as Zbrush's displacement map. In Substance, you are painting 2D maps, so as long as the UVs match, the mesh can be flexible. Later, in Maya, I would not use the decimated mesh, but my clean retopologized model, with subdivisions in Arnold.
- After learning how Substance works, I decided to use J Hill's technique for skin detailing using the HD geometry workflow in ZBrush —
- This wasn't strictly necessary for the Murloc, but I was using this character as a learning tool, so I decided to try out HD geometry
- J Hill is amazing, and as I was sculpting the skin, I realized I didn't have enough tertiary forms like mouth folds, lip wrinkles, etc, to support fine HD details.
- So, I backed up and worked on the sculpt a bit more, with most of the focus on the face and some on the hands, with the goal of having enough small details to support the micro fine details.
- J Hill takes this to the extreme, and this was my first attempt at it in ZBrush. Most of the time I model stylized characters, so it was fun to explore this technique.
- As for HD geometry in ZBrush, the tool has a lot of limitations. You do get a lot of resolution, but you can only see it in HD mode (by pressing A), which then pauses the viewport to update a radius around your cursor at the full resolution. It was a bit tricky to use, but it did give me the resolution to sculpt without a speed hit. You can never see the full model in HD in the viewport, so this would be better for faces, or if I had broken the model up into smaller parts.
- HD geometry isn't visible in the viewport easily, but when you bake maps, all that resolution gets utilized, which is really cool.
- This was my first try at fine details, and I still have a lot to learn, but I enjoyed the process.
- I then baked 8K maps out of ZBrush for the Displacement and Normals. The rest of the maps I generated in Substance 3D Painter.
Eyes and "hair" tentacles
The eyes for the Murloc are sculpted oblong shapes, and not purely spherical. They are spheroids with a cleft for the slit pupil. Over the top of the eyes is a second, smooth mesh for the transparent gloss layer. I then added some layers and displacement in the Substance pass.
For the radial pattern in the iris, I used an Anisotropic Noise and baked that down to a mask so I could mirror it in Photoshop. Then I used the mask as a height channel to give it depth. The color of the eyes is a series of Fill layers in Substance with black masks and Paint layers to reveal the color. This is a standard Substance method for controlling and mixing colors, much like in Photoshop. I did use a subtle Emissive map for the eye color so I could control the look in Maya as well.
For the tentacles, I modeled one in ZBrush and reposed it. When I went to retopo the model, I made one clean tentacle and then reposed it to match the sculpt. My intention was to have one tentacle that shared UVs, but Substance doesn't like overlapping UVs, and so I ended up breaking up the UV shells anyway.
The tentacle maps are a mix of ZBrush displacement and Substance Height Displacement, since I decided to add some bumps to the bases in Substance. I did this just to see if it was possible. I think it would be preferable to avoid this workflow, though, since Substance and ZBrush prefer to bake their displacement maps with different mid-grey values. Next time, I would just add the bumps in ZBrush. The color on the tentacles is a basic painted gradient, with some speckling in the Roughness.
The Weapon
After the initial sculpt, I wanted to make a pose for the Murloc. It's a cardinal rule to me that characters should be shown with emotion and pose, if possible, and not just neutral in a portfolio. The art I was using for the Murloc was a spellcaster, and I didn't want to take on sculpting fire for this challenge.
Murlocs are often portrayed with a spear — it's a classic look. So I thought a cool bone jaw spear would be neat. I found a great reference for a dinosaur jawbone and started sculpting a weapon. However, it became clear that it was not reading as a spearhead, but more like a cleaver or a knife, so I abandoned that idea in favor of simplicity. I didn't want to confuse the reader since the weapon was not a focal point, more of a supportive prop, so I kept the silhouette simple.
Tricks to save time
Since this was a learning project, my goal wasn't necessarily to go for speed, but to methodically step through this process and run into brick walls until I understood it and baked it into my brain. In retrospect, I think my biggest misconception was that I would make a relatively simple sculpt in ZBrush, do a quick retopo / UV layout, and then do most of the heavy lifting in Substance 3D Painter. However, I found that sculpting more details in ZBrush was more interactive and fun, especially since I know ZBrush well and have a lot of comfort there. It is nice to see real forms represented in the viewport while working, and ZBrush doesn't really care how much geo you throw at it. Those sculpted details give Substance a lot of power in the maps it bakes when you go to paint. So by sculpting more in ZBrush, I made the Substance process much easier.
My final sculpt in ZBrush was 148.507 million points (with HD geometry on the body subtool), though without HD geo on the body, all the subtools added up to around 8.5 million points, which is quite light.
Another trick I could have used to save time would have been to lower the resolution of my maps temporarily, so that the Arnold IPR render worked faster. But, I did not optimize my workflow for this project.
Retopology
I retopologized the model in Maya using the live mesh/Quad Draw method:
- I exported my decimated sculpt from ZBrush.
- I made the decimated mesh live, so that the modeling processes snap to the mesh.
- I used Quad Draw in the Modeling Toolkit to draw out the retopology.
- It's important to keep the polygons very large and broad at the start, and not get hung up with granular polygons. Otherwise, it takes too long. You can always add edge loops after it's blocked in.
- I traced over the mesh on the major forms and some secondary forms, adding edge loops, though I did not intend to rig this character. If I did, I would spend more time in this phase.
UVs
I used the basic tools in Maya for UV layouts, using UDIMs. I wanted maximum resolution for the skin, so I used 7 UDIMs for the body mesh to ensure I could retain resolution from my baked maps. The process was:
- Add a quick planar projection to each mesh to have some starting UVs
- Select border edge loops and use the Cut and Sew tools to define the borders
- Then, unfold the UV shells and scale / orient them to fit in the UDIMs. I used the UV checker image to ensure my texel density was even across the mesh.
- I placed the shells in UDIMs according to which mesh they belonged to, to minimize map count later.
- Once done, I brought the UVed model into Substance 3D Painter just to check it. Substance is very picky about UVs being precise, and I had some micro overlaps that it alerted me to. It was a good way to quickly check the UV integrity before moving back to ZBrush for projection and map baking.
Texturing
After all this setup, I was finally ready for Substance! I watched many Substance 3D Painter videos, and there are a lot of great ones out there. I was intimidated by it at first, but Substance shares a lot of DNA with Photoshop. It was not hard to learn the basics, but much like Photoshop, it's a deep well of possibility, so it will be a long time before I consider it mastered. I have to credit Cryptic Visionary's videos for getting me on the right track out of the gate.
The Skin
The great thing about Substance is you can play around a lot. It's very responsive, and like Photoshop, you work in layers to build up a look. You might lay down a base tone, and then add a red color fill and a black mask, and fade it down to get a nice blend. You continue layering in this fashion, building up color tones from the sub dermal layers of skin up to the top.
For this character, the skin was the most challenging surface, since it is the most visible and detailed. It was my priority to get a basic skin gradient first using fill layers with paint masks, and then explore a poison dart frog type skin.
After the basic color gradients were in place, I added a very small 3D Simplex Noise layer to break up the orange tones with some yellow. I blurred the noise a tiny amount and used it in the height and roughness channels for a very subtle orange (fruit skin) breakup.
The black spots on the head were painted with the dots brush, and I used a High Pass filter to break it up. Then I used some Levels and a Contrast / Luminosity filter to crush the darks into more defined spots. I also used an inverted Curvature mask to paint the spots out of the deeper wrinkles.
I painted a blue Fill layer with some veins and pushed them back as a more subtle red. You can really take this technique very far, but I stopped here. In a future challenge, I'll attempt human skin, which has much more subtle complexity, but it all comes down to building up and balancing layers.
An important step in this process was to set up my Maya Arnold render file and test the maps. The model will not look the same in Maya — the lighting and rendering conditions differ a lot, so I would often bake my maps and check them in an Arnold render. Then, I'd go back to Substance to tweak and re-export maps. This process was quick and flexible.
The Tongue
The tongue's surface was simple compared to the body skin, with only four layers. I used a Curvature generator to break up the coloring in a mask, along with some basic dots strokes in the Color channel and Height channel. I wanted the tongue to look interesting, but I didn't want it to overpower the face. It's important to maintain order-of-read, so that your eye goes to the focal point first, and the secondary and tertiary details are there for support.
For example, I spent the least amount of time on the feet, since they are not a focal point in this piece.
Lighting
Maya Arnold was the renderer I used for this project. The lighting is a simple three-point lighting setup, though much of the fill light comes from an Arnold physical sky skydome. The three area lights in the scene do illuminate the diffuse, but their effect is mostly evident in the specular, since the Murloc is supposed to look wet and glossy.
I tried a few HDRI lighting setups, but settled on this more basic approach. Lighting is another deep well, and I would consider myself a novice in this area.
I rendered stills and a turntable in 4K resolution, and I did boost the gamma a nudge afterward to make things pop a bit more, but it was very subtle — 1.1 gamma adjustment. I compiled my frames in Blender's video sequencer and did the tweaks there for the turn.
I did render some tests with depth of field, but decided to avoid it since I wanted all the details visible. To my eyes, it wasn't an improvement. I think in a real shot, that would be different, but for an asset render, it only hid things.
Summary
Time
My first file was saved on April 9th, and I posted the project on Artstation on May 4th. This included a sculpt pass, retopology, UVs, same for the weapon, then a ZBrush pose blendshape, an eye fix blend, a neutral arms down blend, Substance texturing passes, a Lighting setup, and render time in 4K. However, I consider this a learning pace. At a production pace, this could go much faster.
Challenges
The main challenges were exploring Substance and the workflow between ZBrush, Substance, and Maya. My career has been spent focused on stylized modeling, but I've decided to branch out and have fun with more aspects of 3D. But there were many stopping points and missing links.
Often, a video would explain just enough to give an overview, and when I tried it myself, I'd get an error or it wouldn't work correctly.
A great example is when I was testing the depth of the field in Maya. In the camera panel, there is a depth of field dropdown — but that is ONLY for the fake viewport DOF to give you a rough idea of the settings. I kept rendering, and nothing would change even with extreme values. The real depth of field settings are under the Arnold drop-down in the camera panel. Little things like this had me stuck at times. I found Chat GPT to be quite helpful in these instances, to point the way.
Another big area of challenge is sculpting fine details — it's not something I've done before, so I feel I have a lot to learn on that score. Artists like J Hill, Kris Costa, and Glauco Longhi are masters at realistic detail and are truly inspirational.
Advice
My advice to young artists is simple:
Do lots of projects. They can be small projects, and have a goal when doing them. Example — sculpting a nose. You don't have to make a full-fledged character every time, but be focused and prolific. Fail your way to success. If you are not sure what to make, do the thing you are most afraid to do.