ZBrushCentral

here's a workflow for Lightwave to Zbrush and back

I’ve been struggling with this and found a straight-forward solution to the following

problem. I thought other Zbrush newbies like myself may find this workflow useful:

You have a Lightwave model, with UVs you want to use, surfaces defined, bones, weight maps, etc. You want to use them all for your animation in Lighwave, but you want to use zbrush TExture Master for texturing.

Here’s the workflow I’ve found will accomplish this:

  1. In Lightwave: once you have the geometry and Uvs for you object the way you like, go
    into surfaces>shift select all the surfaces you will want to apply the UV map to, go into the color texture panel and apply the UV map. [Image map, projection= UV UVmap= the one you want to use, select it from the drop-down list.] You don’t need to choose an image to apply to your UVs. Save your LW object.

  2. Take bones, if any, and temporarily cut them out of your object, leaving the geometry you want to texture, say, a character skin, complete with UVs and surface groupings as is.

  3. Export the object to obj format.

  4. In Zbrush: BEFORE you import your object, get Texture Master running.

  5. Import your obj, and get it in your document window.

  6. Turn on Transform>Edit. Then rotate and zoom as needed to get a surface you want to
    paint on.

  7. In the Texture menu, set up the resolution you want for the image file that will result from your painting the object. Choose New texture.

  8. In TextureMaster, click Drop, and it will automatically pick the brush for you. Paint as needed on the surface of the object which faces you.

  9. Click Pick, then zoom back out, then you can rotate the object again, and zoom back in.
    Repeat this process as needed – you should see your paint applications arranging
    themselves in the Texture Menu window, in the pattern of the UV map you made in Lightwave.
    Be sure not to change any geometry on your object during this process.

  10. When you are finished painting, and are back in Edit mode [Pick], Export your model
    through the Inventory Menu. Be sure you have txr and obj turned on.

  11. Back in Lightwave, load up the Lightwave object from which you exported your obj to Zbrush. Go into Surface Editor, shift/select all your surfaces, go to Color [T] and load in the bmp image file that was saved automatically with your object from Zbrush.[it’ll have the same name].
    In the Lightwave file you will have the UV already set up from step 1. Now you just
    choose the image file you made in Zbrush.
    12 Now you’re ready to go, with your surfaces, bones and weight maps, you’ve only used the image map from Zbrush.

Notes:
the reason you only use the image file is that the surface groups and names and all th other info you have stored in your LW object (like weight maps) will be gone from the export/import steps.
I don’t know why, but the texture exported from the texture menu is messed up when it is used back in Lightwave, while the automatic bmp saved with the object works fine (may need to be flipped vertically it looks like)

Since I’m very new to Zbrush, I’m sure the experts can add some more functionality to this workflow. Please post whatever you can add to this.

thanks,
Nancy J

big thanks for the info, will give the steps a try-Mark

I was playing around with a ZB<–>LW workflow, too. I wanted to try and figure out something similar to the workflow discussed here:

http://www.cgtalk.com/showthread.php?s=f3bf5f12fd9ea046fb6146c617e5efd5&threadid=77779&highlight=zbrush

Here’s the result. The model or the paint work aren’t any good, but it was more to figure out the importing process than anything else.

I’m using the NormalMapper plugin found here:
http://amber.rc.arizona.edu/lw/normalmaps.html

Here’s the idea:

  1. model the cage, and assign texture coordinates
  2. Subpatch (TAB) the model and save it.
  3. Freeze (ctrl-D) the model and export to a OBJ (the smooth obj)
  4. Import that into zbrush, assign a texture, and sculpt and paint away.
  5. export to a obj (the deformed obj) and a texture.
  6. Back in Lightwave, load the deformed obj to a background layer and the smooth obj to the foreground layer and run the CreateNormalMap plugin. choose the file type and sets of texture coords and stuff. Make sure you turn on “output displacement map”, and save it as HDR.
  7. I converted the displacement map to a low dynamic range format with HDRshop but I think I didn’t need to do this because lw support hdr images. The green channel is positive displacement and the red channel is negative displacement.
  8. In layout, load up the original cage, and apply the texture map as usual, the NormalMap to the surface with the NormalShader plugin, and the displacement map to the object displacement map. Be sure to set the render subpatch level pretty high.

That’s it.
:slight_smile:

Cool!
I haven’t tried my workflow with my subpatched objects yet – so I guess from reading Joel’s post that you would have to freeze the subpatch object first? It would have to be at patch level 1, right? So the UVs would work…or not? Seems like it would be a little too low-res for accurate painting in Zbrush. I’ll have to try playing with this.

Anyone else have experience painting on subpatched LW objects in Zbrush? with LW UVs?

thanks,
NJ

When you export an OBJ, ZBrush automatically saves the texture wrapped onto it as a BMP of the same name. At the same time, ZBrush performs several compatibility routines such as Fix Seams and flipping the texture vertically.

When you export from the Texture palette, ZBrush does not perform these tasks. You need to flip the texture vertically yourself. You can also manually perform the Fix Seams operation by pressing Tool>Modifiers>Texture>Fix Seams.

Hi JBD,

I have the normal map plug-in you mention, but I don’t see any “output displacement” feature. Is there something I am missing?

sorry, it’s actually labeled “Save displacement map…”, at the bottom just above the Okay button.

Although I’ve been playing with it some more and I think you get better results using just the normal map and no displacement (or a ‘tradional’ hand painted displacement map mixed with the normal map).