Texturing & grooming a fox w/ Quixel mixer, materialize & Blender

Texturing and grooming a fox with Quixel Mixer, Materialize, and Blender

Hello! This article will cover the steps performed in our Blenderx tutorial on our YouTube channel, primarily for those of you that may have found the video a little too fast, or would simply like to refer to a document as you work. 

The goal of this tut is to introduce you to a workflow for characters that make heavy use of Blender’s hair systems, and how you might use textures in combination with actual hair simulation to optimize your mesh for rendering.

This tutorial assumes you are familiar with the following:
- Using Blender (navigation, the different modes: Object, Edit, Texture Painting, Weight Painting, etc., assigning cameras, lighting, and rendering).

- The basics of working with textures and the Principled BSDF shader.

To replicate the steps in this tutorial you will need:
- A mesh ready for texturing- you can download the fox model used in this project here. It has around 16k quads and is UV unwrapped. Feel free to refine it more or alter it in any way. You may use this fox for any purpose, no attribution required. :) 

- Quixel Mixer 2020 +

- Materialize 

- Blender  

- Patience.

- Possibly a tumbler of very strong coffee.

All of these resources are available to you for free (except the coffee, but that’s optional). However, in the case of Quixel Mixer, a disclaimer is in order:

Quixel Mixer is especially great for working with the Megascans library, which requires a paid subscription, but you can just use Mixer, which is available for free, to blend maps of your own. I’ll be showing you how to create maps out of an image from Materialize so be assured that you will not be required to purchase a Megascans subscription to complete this project. 

With that out of the way, enjoy our Quixer mixer tutorial!

Part 1: Prep

If we’ll be using particle simulation for the fox’s fur, why bother with textures anyway?

Relying entirely on fur can be very taxing on render times, but it’s great to be able to see actual fur and a hair shader reacting to the light in a scene. Hence, in this case, at least, we’ll work to end up with a mesh that can rely on its textures for none hero shots let’s say, and more of the particle sim for when it’s the point of focus or just closer to the camera.

At the time of this publication, Quixel Mixer has yet to include symmetry painting in its feature set. This can make painting within Mixer quite tedious for projects like this. Fortunately, we can use Blender’s texture painting tools to create black and white maps that will drive the way our textures or layers interact within Mixer.

Fire up Blender and import the fox mesh, or whatever mesh you wish to work on. 

  1. Preparing Masks in Blender
    Let’s start by creating a simple black and white mask to delineate the main colors of the fox’s fur. Let’s enter texture paint mode here in Blender, and we can create a new map using this plus icon on here. Let’s specify our resolution and confirm, and also make sure we have symmetry enabled before we get to our Quixel mixer painting.
Preparing Masks in Blender
Mirror option

The white color in this map will define the red areas and black will define the white areas. I suggest having some reference of a fox up somewhere as you do this and take the time you need.

black will define the white areas


white color in this map will define the red areas


some reference of a fox up somewhere
fox color mask


We’ll do the same thing for the black areas of the fox.

same thing for the black areas of the fox


When we’re done let’s save our maps somewhere and have a look at Materialize.

  1. Generating Textures in Materialize
Generating Textures in Materialize


The Materialize UI may seem a bit sparse, but using it is actually very straight forward. The first thing we need to do is hit O to open an image of fur to use for our diffuse map.

hit O to open an image of fur to use for our diffuse map


To avoid breaching any Terms of Use, this image isn’t included, but you can find it on textures.com and searching “fur”. 

find it on textures.com and searching “fur”
tileable texture set from our image


Materialize will allow us to generate a full, tileable texture set from our image. 

Starting with the height map slot, let’s hit create. We get a new panel and can use the equalizers there to get the level of detail we want for our height map. The Set as Height Map button below will confirm our tweaks and save our map.

Starting with the height map slot, let’s hit create
new panel and can use the equalizers


We’ll rinse and repeat for each of the other maps. Allow yourself to experiment with different settings and work with the available presets to get the look you want.

Personally, I tried to get as much high-frequency detail as possible for both the height and normal maps. 

rinse and repeat for each of the other maps


When we have our maps we can hit tile maps, and this will open a new panel we can work with to make our textures repeat seamlessly across our mesh.

hit tile maps, and this will open a new panel


We’ll go with technique splat as our tiling method - this is just what I found worked better in this case. Let’s go with 4096 as our resolution and now we can experiment with these parameters until we get a seamless repeating pattern. 

Increasing the texture tiling slider will allow us to preview what our maps look like when tiled. It would be good to set this to a high number earlier on and focus on making sure that the patterns blend seamlessly into each other. Again, take the time to experiment with the sliders until you find a result that works for you.

When we’re ready we can hit set all maps and then hit s on each of the map slots to save the maps on our drive.

hit s on each of the map slots to save the maps on our drive


Part 2: Texturing

If you’re launching Mixer for the first time, you will be asked to log in to your Quixel or Epic Games account. If you don’t have one, you will need to create an account. 

log in to your Quixel or Epic Games account


Create a New Mix, specify a name and your texture resolution. 

Create a New Mix, specify a name and your texture resolution


To import a custom mesh, simply choose the option from the Type Dropdown in the setup tab

choose the option from the Type Dropdown in the setup tab


With our mesh loaded, let’s create a solid layer.

create a solid layer


We’ll import all our Materialize maps into a solid layer by expanding each channel on the right 

here and loading the respective maps.

import all our Materialize maps into a solid layer


expanding each channel and loading the respective maps


For roughness I used the smoothness map we got from Materialize and inverted it to check whether the white values meant “smooth” and not “rough” which is what we’d normally expect.

 smoothness map we got from Materialize and inverted it


I tried lowering the opacity for the displacement map to get more subtle detail but ended up disabling it for now.

Let’s expand the placement tab and start adjusting how our textures tile across our mesh. Let’s use box projection tiling for this by the way, and adjust the scaling of our textures and rotate them to get an approximation of fox’s fur.

adjust the scaling of our textures
rotate them to get an approximation of fox's fur


Let’s add another solid layer and deactivate all channels except albedo and choose an orange color. 

add another solid layer
deactivate all channels except albedo
choose an orange color


add mask stack


Then right-click on the layer to add a mask stack. 

add a mask component here


Then add a mask component here and choose the map. Here we’ll add the map we painted in Blender earlier on.

choose the map
add the map we painted in Blender earlier on
rinse and repeat for our black areas


Let’s rinse and repeat for our black areas.

As you can see, Mixer reveals the layer below a layer with a mask stack where there are black areas on the mask map. I painted what should be the black areas black, which means I’ll need to invert my map.

there are black areas on the mask map


 We might also adjust contrast using this range slider.

adjust contrast



animal fur surface


At this point, we can bring our new maps into Blender but let’s have a quick look at what we can do with the Megascans library. I’ll head to my local directory and use this animal fur surface. We won’t need the albedo channel for this, and we can start adjusting placement as before, and as you can see we can get a good result in no time. Let’s combine our materialize textures with this surface to get a final result. You could also combine two or more sets you created from Materialize or downloaded from a texture library, of course.

combine our materialize textures with this surface


Let’s export our textures now and head back to Blender.

export our textures and head back to Blender

Part 3: Adding Fur

So here’s our textured mesh, which we can use when the fox is farther from the camera or is moving quickly across the frame may be but we’re going to add some actual fur to the model as well.

We’ll start with the parts of fur that dramatically affect the form of the fox as we see it,

beginning with the fur on the cheeks. So in weight paint mode we’ll add a new group, name it cheeks and start painting weights to where we want the fur generated. 

textured mesh


beginning with the fur on the cheeks


It’s good to make gradations in weight so that we can tell Blender not just where the fur should be but how long it should be in a specific region or where it should clump.

Now we can add a new particle system and assign our group to the density field in the vertex weight tab. In this case, we could also use this group to drive length, or just paint a new one.

 assign our group to the density field in the vertex weight tab


Let’s adjust the diameter the length and starting number until we get something we can work with. 

adjust the diameter the length and starting number


Then in particle edit mode, we can begin grooming the fur.

grooming the fur


I’m just using the comb and length brushes to set the direction and changes in the length of the fur here.

When we’re happy we can add children for more volume.

using the comb and length brushes to set the direction


We’ll repeat this process for the following:

brow


ears


collar
tail


eartuft


whskrs


For the fur material, I used a principled hair shader in direct coloring mode and plugged in my color textures.

principled hair shader in direct coloring mode


plugged in my color textures


Note: I’m using the ACES color profile. While not necessary, I highly recommend learning about it. You can find out more here

We’ll need to assign this material to each particle system.

We’ll create one final group for the base fur and in weight paint mode this time we’ll paint in areas we DONT want fur on (or as much fur at least), and in a new particle system, we’ll assign this group and invert it. 

one final group for the base fur
areas we DONT want fur on


And that’s essentially it. I’ll leave it to you to refine and stage your model. Here’s what I ended up with.

refine and stage your model


stage model
final result


I hope this was informative, and I’d love to see what you come up with, so please tag us on social media if you decide to share your final result, or leave a link in the comments here.

Related Posts

No items found.
No items found.
live chat