Friday, February 19, 2010

Accurately offsetting overlapping UV chunks in 3ds Max


In many cases when baking textures, (AO, normal maps, etc) 3ds Max sometimes doesn't like the idea of overlapping UVs.  The following steps can show you how to quickly identify your overlapping faces, and accurately move them outside of the UV space required for baking.


The thing to remember is that it won't matter if your UV islands are outside of the box when rendering or putting this into a game, because of how the UV coordinates tile.  BUT, when baking, sometimes you can get bad results if your faces are overlapped in the 1,1 UV space.



Step 1 - Save and backup your work always.


Next, you should identify what faces in your mesh actually ARE overlapped.  Remember - at least ONE of your UV islands should still be in the UV window, but all the other overlapping copies can be moved outside the UV window.




After you have identified what faces actually are overlapped, the next step is to leave at least one UV island in the window, and move the overlapped faces off to the side.  One quick trick that I do, is simply click ONE of the UV islands with "Select Element" turned out, then HIDE that face so that we can manipulate the remaining overlapping UV chunks and have one "safe" UV chunk left behind.




With a single UV island left behind, the last step is to move the rest of the UV chunks off to the side.  To do this, follow these steps:




Be cautious to do it in that order, and avoid scrolling your mouse wheel or clicking anywhere else, as this dialog box can be finicky at times.  When you are finished, you should have one clump of overlapped faces off to the side, and if you Right Click > Unhide All, your original "safe" face should be left behind.  All done!



4 comments:

  1. This is exactly what I needed. Thank you for the easy to follow tutorial. :)

    ReplyDelete
  2. wow bro thanks iv been looking for a simple and straight foward tut like this

    ReplyDelete
  3. LOL how useful, and comfortable, yet simple method.

    ReplyDelete