Dave Girard's 101 Autodesk® Maya® Tips is now available in Kindle, interactive iPad edition and DRM-free EPUB/PDF editions. Work faster, cry less. Read more about the ebook.

Follow cgbeige on Twitter

Topics by tag:

Recently published articles by Dave G:

Free downloads by Dave G:

Mac OS X-only downloads:

The Only Way to Avoid UV Seams

You can spend all day making low-compression UVs but if you have seams, there is only one way to avoid them showing up for displacements and normal maps (without using Ptex): they must meet parallel in UV space. There’s no way to have two pixels rotated along the seam and have them meet nicely. Notice my meteorite’s UVs and how the displacement is perfect along the seam:

A clearer picture with no texture:

The dead-simple UV layout might surprise you:

Watch what happens if I use a set of UVs that have lower compression but form an organic shape with no hard edges:

The displacement render shows a seam:

The goods news is that this makes UV layouts pretty easy. All you do is pin the edges after squaring them and relax/unfold the inside edges. Sure, you’re getting a wonky proportion of object to UV space along the edge but it’s a lot better than having a seam. Here’s the Maya workflow for making squared-edge UV shells:

Headus UV Layout has a better method for preserving straight edges while unfolding and relaxing. You just hit the i key over the edges and it will straighten them when you do the f key unwrap. If you don’t have UV Layout and you have to deal with UVs, it’s an amazing app and highly recommended.

Where Ptex fails

The reason Ptex works so well with quadrangle faces is that there is no shearing of pixels and every texture edge is meeting parallel. Add in a triangle and Ptex suddenly doesn’t work so well. Look at a default Mudbox sphere near the poles:

So, if you’re going to use Ptex, make sure you are using a nice quadrangle topology or keep any triangles well tucked away.

4 notes | Permalink

  1. yoiten reblogged this from polygonspixelsandpaint
  2. polygonspixelsandpaint posted this