ZappLink: head texturing tutorial


Chris Baker (atwooki) has taken the time to put together a nice tutorial on using ZAppLink during texturing. Enjoy!

ZBrush: Preparation


  1. Choose a ‘base’ color from the Color menu, and then create a new texture; Here I’ve gone for 2048 x 2048 using the Power of 2 plugin, which is the tool of choice for this operation.
  2. Import your mesh/ZTool, and if not previously UV’ed in another application, choose your UV preference between those offered under the Texture menu; in this case I’ve used AUVTiles, with an AVRatio of 1.
  3. Create a Morph Target and then divide the mesh to the necessary number of divisions. Go back down to level 1 and save your ZTool. Return to the highest level for texturing.


  1. First off, set Tool>Display Properties>DSmooth to a value of higher than 0 so that the pickup from Projection Master can be faded (eliminating jagged edges).
  2. Next, ‘drop’ your mesh to the canvas with Projection Master (hit G on the keyboard), and as we’re creating a color map here, check Colors and Fade ON and uncheck all others, as we’re starting off with a frontal projection here.
  3. Locate the ZAppLink plugin (under the Document menu), and choose your method of layering in the external application you plan to use.
I’m using the Unshaded + Color Adjustment layer option, as this provides an extra ‘template’ shaded image of the mesh on an additional layer above the layers I’ll be editing later.

This will act as a useful visual guide for accurately positioning any bitmap elements in the external app.

External application:


  1. Upon hitting OK from the ZAppLink window, you’re taken into your chosen external application, (in this case Photoshop) and presented with a flat, unshaded background layer with a gray shaded layer (the Zshading lay super-imposed immediately above it.(Do not attempt editing this shading layer!)
  2. Within Photoshop your texturing options are pretty limitless. Here I’ve imported a few photographic elements with the lasso tool into separate layers for positioning and general editing purposes on one side of the image, alternately switching the ZShading layer on and off in-between edits so as to analyze and further correct any decisions I’ve made. This layer is particularly useful for dealing with areas like the lips, nostrils, ears, and masking out the eye-socket area.
  3. I could use the many brushes within Photoshop to simulate the effect of skin pores more accurately here, but as I’m creating a frontal projection, I feel these kind of details are better dealt with inside of Zbrush utilising custom alphas and stencils later on. At the moment, roughing out the base coloring by switching quickly between the two applications using different projections with Projection Master is the intention.
  4. To finalize editing at this stage (assuming of course that your model is symmetrical!), merge the layers you’ve edited, duplicate the new layer, and then mirror the it: Edit --> Transform --> Flip Horizontal. Erase any superfluous color near the center and then merge this layer with the previous one below. Any final retouching can now be dealt with using the likes of the Healing Brush Tool or the Clone Stamp Tool. I prefer to save a copy of the unflattened WIP file to my hard disk for any further editing purposes that might be prove necessary later on.
  5. Save your file, and then go back to ZBrush - all nice and painless!

ZBrush: Fine-tuning


  1. If you like what you see on the still ‘dropped’ mesh, agree to the ZAppLink option box, and proceed to ‘pick-up’ your mesh.
  2. At this stage, you’ll probably want to continue with profile, top, back and maybe bottom projections utilizing Projection Master, ZAppLink and your external application as previously outlined to fully cover your base texture with new edits.
  3. To finish off, make a quick UV Check from the Tools à Texture menu, and if necessary, use Fix Seam appropriately. Often you’ll find using ApplyAdj is necessary to fine-tune your UV co-ordinate layout, and depending on the scale of your mesh, tweak the AdjU and AdjV sliders accordingly.







Thank you Chris!

Very nice!

Thanks for taking the time to do this!


Long Live Chris Baker (atwooki)!!


This tutorial is GIMP friendly!!! Thank you verry much, i would have never guessed to ust this with projection master… I this really is cool!

Very nice work, now can you do it on something a little more real. Can you tell me what is going on with the lower eyelid?? Cheers

Hey Atwookie, nice tut and I love that character. :wink:

Nice simple to follow tut, thank you … :smiley:

Great tutorial man. Thanks for sharing.

Most cool and helpful. Thanks!

yes, thanks a lot for sharing info, it will be usefull to understand how does ZappLink works :idea:

[color=Wheat]vlad74, Scott Spencer, Buckie, wierdPal & Moochie & Strannik:
Cheers guys, appreciated!

This tutorial is GIMP friendly!!!
Hehe! How you doing buddy? Nice to know this great plugin is other app-friendly :slight_smile:

Can you tell me what is going on with the lower eyelid?
Sure; like most of this character, they’re unfinished as yet :wink:
Jason Belec: Thanks, Jason :slight_smile:

If using Mental Ray for Maya (as in the below image) be sure to turn off any filtering in
the file texture node,) this render shows the textures are bearing up OK:
(the eyeballs are created with the same technique, BTW)




cool :+1: tutto video please :wink:

Very nice and very useful Atwooki, thanks for taking the time to do this. I always learn something from seeing somelses workflow.

Z-app link and Painter are my current poisons of choice.

I have a Maya question though, it looks like you using one of the misss shaders. How do you have your texture map connected to the misss shader? When I use the misss_fast_skin, I always seem to blow out my texture map.

Genial aurick.:+1: :+1: :+1:


cool tutto video please
Too late! Sorry… I’m working abroad tomorrow; no ZBrush activity, more’s the pity ;( )

I need a job please help me
Don’t we all, buddy - (at least doing something we enjoy!)
Very nice and very useful Atwooki,
I have a Maya question though, it looks like you using one of the misss shaders. How do you have your texture map connected to the misss shader?
When I use the misss_fast_skin, I always seem to blow out my texture map.

I duplicate the original color map, put it in the 'Diffusion' tab, then lower the contrast and saturation (of the copy),dependent on the scale of the file, its photon energy/values per light, and the (yes, it there) an *.hdr.map in the IBL node, and perhaps drop the 'Diffussion strength'also. However; My 'base' shader here is a 'Mix8Layer', with the ZBrush color map in the top entry, followed by the 'Miss_fast_skin'(multiply) , and last of all a 'mib_Illum_blinn'(normal mode - approx: 24%) to help spread and lighten the effect of the SSS. Hard to describe - easy to see in

the shader ntwk; but somehow outside of the realms of this thread…
(If you let me know, I’ll send you a .ma file tomorrow morning if you wish… but only up til 11.00 am (00: GMT)

[color=Wheat] saltapiedras:

Genial aurick.


Thanks for the tutorial Aurick! This is a great tool, but I can’t get the textures back into my 3D Package properly.

Bringing the model and texture into ZBrush is easy. Rotating it around and painting, then reprojecting the texture back into Zbrush from Photoshop is easy too.

My problem is that after I export the texture, whether just the texture by itself or with the obj file and then load the texture in 3DS Max, there are texture seams which I don’t see in Zbrush.

I tried clicking on Tool/Texture/UV Check. It didn’t seem to do anything.

Then I clicked on Fix Seam and nothing seemed to happen either.

I think the problem is that I don’t know how to check and correct the seams before exporting from Zbrush. Could anyone explain that a little or point me to where it is explained in the docs. I haven’t seen a clear explaination of it anywhere.

Is the fix performed just on the texture or is it changing the model uvs as well? I want to keep the uvs the same and just fix the texture so it has no seems when it wraps around the object.



Great stuff :+1:small_orange_diamond:+1:

thanks for the tutorial,it is over my head at this point but its nice to know some of the stuff that can be done w/zbrush,

i see that you have maya in the pipe line,im trying to get my older version of maya to export in obj. file (4.0.3)
any sugestions as to how i can do this ,the only option i have is maya binary and move.
thanks for your time,

Thanks, semimoto -

As far back as I can recall, there has always been an OBJ export / import
switch in the ‘Plug-In Manager’ in Maya (Top Menu bar) ?


thanks , i had to go into the plug in manager to activate the obj. import.