Professional Services
Order outsourcing

Grooming Fur For a Cute Fennec Fox in Houdini

Tobias Lenz showed us how he created the Fennec Fox project, explained how texturing was done in Mari, and described the grooming process in Houdini.

In case you missed it

You may find these articles interesting


Hi everyone, I am Tobias Lenz, a 3D artist from Germany who mainly focuses on grooming and creating creatures with fur coats. Like many other artists, I don’t have that straight line into VFX. I started out studying business administration and got my bachelor's degree in that. Originally, I wanted to work for an ad agency as a copywriter but I realized I like art way more.

My first job after getting my degree was working as a graphic designer for 4 years, all self-taught. Then I started to learn about VFX mainly from watching breakdown clips of movies. In those, I discovered the world of grooming and digital fur, and that was my ‘in’. I taught myself all the basics in 3D watching endless tutorials from basic modeling to sculpting and texturing and slowly gained experience doing personal projects. 

Long story short: after many projects and a presentable portfolio I had the chance to finally make the switch over to the VFX industry and started working full-time as a groom artist at a studio.


After hearing how many of the major studios (and small ones even) switch their focus more and more to Houdini, I thought I’d give it a go. With me originally coming from Maya (using both XGen and Yeti for grooming), it definitely was a bit strange to work in the ‘Houdini way’ at the beginning, but it just took some time to get used to it.

For me, it’s like a puzzle that only makes sense after placing down some pieces. To this day I never stop learning and whenever I encounter a part where I struggle I just look for any way to solve that issue. It can be a snippet from a 5-year-old video on YouTube, it also could be that one forum post you can't really look for and randomly stumble upon but helps me in the end.

I guess any basic introduction tutorial will do and from there, it’s diving into your own projects and tackling each issue one by one. Getting mileage in the software by using it taught me the most.

The Fennec Fox Project

I wish there was a quirky story on why I chose that animal, but I don’t – I just have a fairly big ‘bucket list’ of creatures I want to create and the fennec fox was one of them. I’m basically getting excited about any furry creature really. So it was mostly a spur-of-the-moment kind of decision and I just started watching videos about the animal and gathering reference pictures and put them all together on a PureRef board.

I create all my models from scratch and do all the sculpting in ZBrush. It’s basically looking at reference images and trying to copy as best as I can.

It can be hard to judge what's beneath the fur coat and therefore I like looking for alternative and related animals that have kind of the same structure. Luckily, the anatomy for many animals is so similar and it's mostly the proportions that have to be right. That is also my first goal when I start. I keep my mesh fairly low-poly and just focus on the general shape of the animal, it has to look right when you're squinting. I move on and put more detail in only if I feel like I’ve nailed the general proportions. 

After many hours of sculpting, I then move it over to Maya, retopo the mesh, and create the UVs. 

After that, I go back into ZBrush and start putting in the details, with the focus on the exposed areas of the skin that don’t have any fur on them.

At the end of the project, I also use ZBrush to pose the character. 

Texturing was all done in Mari. I like it because it allows me to use a procedural, node-based workflow, just like in Houdini. Once you get accustomed to that kind of workflow, you don't want to miss it.

I usually start by using a marble-like texture just to get some variation going for the skin. (Inspired by Gael Kerchenbaum’s tutorial on YouTube) I also mostly focus on the tip of the nose and the areas around the eyes, as they are not covered by the fur and have to look perfect. 

The diffuse skin color is all hand painted then. A very helpful mask for this process is the cavity map I can create in ZBrush. Especially for the specular roughness map, it’s a nice way of creating more detail. 

For the shading part later on I also paint ISO masks so I can enhance and alter particular parts, keeping the process as procedural and non-destructive as I can.


Before I tackle the fur, I analyze my references and try to work out the perfect way to split up the groom. In this case, I split it up into the head, whiskers, ears guard, body, paws, and tail.

From there, I create the guide curves which is a very important part. As Houdini’s interpolation (using version 19.5 for this project) for hair is not the best I tend to create many guides so I can achieve the flow that I want. After that, I use multiple noises, clump levels, and various guide process nodes to get the desired look.

I don’t spend ages just in the viewport though. I like taking my groom over to a WIP lookdev setup and start rendering my current state as fast as I can. Many flaws and areas that need fixing will only be revealed once you start rendering your work.

From there, it’s a constant back and forth from adjusting the groom to testing the new version in the lookdev scene. 

I also love tackling the fur color fairly early in the project as well. A gray-shaded render is helpful to start with and spot major issues but once you start dialing in the fur color you really see if your groom matches the references.

I try to keep as much of the process within Houdini. The fur color is completely driven by painted attributes that get transferred onto the hair curves. I use the ‘probability-based shading’ approach for fur which means that one strand of hair can only have one color. This helps tremendously in getting that realistic look.


My lighting setup is simple. I just use one single HDRI image (from HDRI Haven). As my main field of work is grooming I like to keep everything simple and don’t leave any areas to cheat in with. In a real-world production, I can’t just pass on any flaws for other departments to fix. That’s why I like to work with this ‘what you see is what you get’ workflow. 

The same goes for post-production. I only convert my EXR files for the web. There is no additional tweaking and hiding, you basically see the raw render. Sometimes I like to use a little defocus using the ZDepth render pass but I didn’t in this case. 

I did use more cinematic lighting in other personal projects but when I just want to create a believable groom I keep it as simple as I can, with no areas to cheat in.


There seems to be this point in a lot of projects where you think it’s not really going anywhere and you are doing one step forward and 10 steps back. But you just have to get over that hump, maybe take a day off to get a fresh view of the project. Generally speaking, all areas have to be at a certain level for the creature to look nice. That's why I have a lot of back and forth, basically having Mari, ZBrush, and Houdini open and ready to go, exchanging texture versions, and updating geometry caches a lot. Always check the references you use of course so there is not too much guesswork involved.

A big help for personal projects is (for me at least) to set myself a semi-strict deadline. Otherwise, it just results in endless tweaking that doesn’t really go anywhere. I just try to take anything I learned in a project and do it better next time. If I feel the project needs another week, I’ll definitely put in more time but I try to keep it compact as best as I can.

Finally, I'd like to say I love browsing the web for all those amazing creature projects that artists are putting out. It keeps me both motivated and inspired to work on my own projects.

Tobias Lenz, Groom Artist

Interview conducted by Theodore McKenzie

Join discussion

Comments 0

    You might also like

    We need your consent

    We use cookies on this website to make your browsing experience better. By using the site you agree to our use of cookies.Learn more