ZBrushCentral

How to make Specular maps from Zbrush Sculpted Character for Keyshot ? Workflows ?

hey guys,

am still a bit of newbie in texturing in zbrush and keyshot. am at a point with this where i’d like to play with some poly paint, but first try a Specular map. have no idea how to create a specular map in zbrush r7.

right now i just have a mat cap “gorilla” mat on the character. should i unwrap and create a texture. then open in photoshop, convert to greyscale or something for a good sweaty skin look on certain areas ?

any help greatly appreciated.

In your original thread, you had a pic showing your subject was a gorilla, so you’re looking for a sort of facial specular map. I’ll tell you in general terms how I might go about doing it, but depending on how new you are to Zbrush, you may have to learn about some of the concepts I reference.

It just depends on how much work you want to do. These days I get the impression that most people, if working only for static image output do layered texturing by means of composited render passes (they render out the same scene but with different materials applied to emphasize certain characteristics like diffuse, shadow, specular, etc, then composite and edit them in photoshop).

If you want to create a dedicated specular map for layering in a third party program, first of all, you’ll need to create UVs for your model, either in Zbrush or elsewhere. This is a broad subject in itself, so Ill leave it to you to research the ins and outs of Zbrush’s various UV creation methods.

I would choose to handpaint my specular map in Zbrush, though there are quicker and dirtier ways to create one. You could simply convert the model’s color texture to greyscale, and photoshop it for brightness and contrast, and do some lightening on areas like lips that are supposed to be shinier.

First, with the model at polypaint levels of mesh resolution, I would filll the model with about a 50% grey color.

Then I would start with either an Ambient Occlusion or Cavity masking, with a light noise applied to the intensity curve, until I found a setting that looked good and darkened the recessed areas I didn’t want to all a lot of attention to with specular (eye/ear cavities, nostrils, etc). Note : At higher levels of subdivision generating AO masking becomes CPU intensive, so I would experiment at lower levels until I was ready to generate the higher res masking.

Once you’ve got some nice shading on the mask, invert it and fill it with about an 80-90% black.

For there I would probably run it though noisemaker for a fine grain noise to diffuse the shading and add skin texture.

From there I would start handpainting with some airbrushy sprays in 0-30% white, there areas I most wanted to call attention to…cheekbones, nose area, ear ridges and especially lips. How much work you do here depends on how well you want to try and render the complex reflectivity of skin.

You should end up with something like this I knocked out quickly using Nick Z’s humanoid model. It could probably stand to be darkened up in photoshop a bit:

exspec3.jpg

Save that texture out of zbrush as an image map. You can further edit it in photoshop for things like noise, brightness, contrast, etc. You external renderer should have controls for that as well. As long as your model has UVs, you should then be able to apply it in the external render in the specular channel, and adjust its settings until you find something you’re happy with. You can always reapply the texture map in Zbrush to continue to paint on it and change things you dont like, then re-export.

man you are soooo awsome for helping !!! thank you sooo soo much :wink:

so i’ll try a few of these methods.

currently there are uv’s on him, but only a “matCap Gorilla” material applied.

what would be the steps to convert the Matcap to color texture ? or should i even ? (update : just found this tut on how to bake Matcap to materials)

if not, should i then "mask by cavity " and “fill with grey color” ?

forgive us challenged folk and bless you for all your patience.

on a side note: i tried to play with two materials blended in keyshot, but was not liking the effect, probably due to my own lack of abilities :wink: good tut on that kinda thing here:

No your Gorilla Matcap would be serving as your color or diffuse texture. Your specular map would be a completely separate texture/image.

If I recall, matcaps should automatically convert to a texture in Keyshot when sent via KS Bridge, but the activation my Keyshot is currently broken, so I cant check :confused:

I’m only going to speak generally here, because your inquiry actually involves a lot of complex subjects in zbrush you will have to learn for yourself. Polypaint. How to generate UVs. How to generate a texture map on a UV’d subject, apply it, and convert polypaint data to an image texture. How to export that texture as an image.

For best results, consider not using a matcap as a diffuse color texture. They look good when previewing models in Zbrush, but they have lighting info baked in, and are far too monochrome to represent all the color variation found in human or animal skin. I would choose to handpaint those as well.

For that specular map I created, I started with one of the matcap whites just for preview purposes, but you’ll only be exporting the color information you place on the model, not any material information. When I say “fill an object with color”, I am referring to the Color > Fill Object command that will fill an object with the currently selected color and/or material as polypaint data, if the MRGB or RGB buttons are active.

So in a classic workflow, your black gorilla material will be your color or diffuse map, and a completely separate greyscale image, both generated on the same UVs, will be your specular in the appropriate channels.

Perhaps you see why most people dont even mess with this anymore, unless they need to render their model in real time. They simply render a pass of the subject with a color/light setup that emphasizes color, and another that emphasizes speculars then composite the two in photoshop using blending modes ( research “render passes”), and touch things up by hand. Applying active texture mapping does give you the advantage of being able to easily make multiple renders of the subject at various angles, if that’s what you need.

Scott,

i di do know how to :

  1. generate UV’s via UV MASTER.
  2. generate a texture map based on polypaint via “texture from polypaint”
  3. displacement maps as well

also love compositing vs doing it all in real time.

think I’ll play around with rendering passes in keyshot as well.

i guess my confusion was how to generate a basic diffuse in Zbrush vs using a Matcap. You’ve explained this by stating " Color/fill object".

Will give this this a try too. Thank u again sooo much for your insight and help.

Can’t seem to decimate or zremesh this model without crashing Zbrush. see screen grab. any suggestions ?

Screenshot_11.jpg

Attachments

Screenshot_11.jpg

Does it crash Zbrush, or cause it to hang?

What is the polycount?

Try freezing your subd levels, and doing a Tool > Mesh Integrity > Fix Mesh on it.

Had sent a screen grab to show polycount.
active points 48 mil, total points 50 mil.

killed lower subD, tried freezing too,

then tried decimation which gives run time Microsoft error after 20min.
tried zremesh at target 20, adapt, rest default. Results in too low poly that won’t divide right. Dividing adds plots but it stays looking super low poly.
in progress of trying zremesh target 70, adapt, rest default.

mesh integrity test passed quickly. Don’t have any layers.

Dynamesh results in too low poly or crashes if set too high.

wonder if it’s the file. Might try saving out stool and placing in new file. Then maybe exporting high poly obj and reimport.

i bet it’s something really dumb I am doing

Dynamesh results in too low poly or crashes if set too high.

In the future, if you want my help try to answer my specific questions–not because of your limitations, but because of my own. I need stuff spoonfed to me. I’ll be honest–I cant perform active points to polycount conversion in my head–I don’t know that equation–but 48 million seems high. It’s likely past the practical stability limit of your system. And Zbrush crashing (immediate crash to desktop) and zbrush hanging (frozen program, possibly followed at some point by a CTD) are two separate and indicative situations, so that would have been useful to know.

You don’t need to capture every bit of detail with dynamesh. You only need to get it to a practical polycount that captures the basic form where you can successfully Zremesh it without crashing, and then project the detail from the original (nothing in the screenshots seems to indicate a model that requires that much density). So duplicate your mesh as a subtool, dynamesh the duplicate at a level of resolution your system can handle, zremesh that duplicate, subdivide it to a sensible level (let’s say a max of between 6 million and 12 million polys on a per subtool basis–you can go higher in Zbrush, but it’s asking for problems), and project any lost detail from the original via Tool > Subtool > Projection.

So I was able to dynamesh a decent looking mesh.
I get how it does not need to reflect all the detail as it’s for projection.

problem now is I can’t get it project. Just gets hung up. Maybe due to that
50 mil subtool . I got the duplicate down to 1 mil. Looks good too.

wondering what to do now.