Home Technical Talk

UV layout tips and tricks thread

greentooth
Offline / Send Message
CheeseOnToast greentooth
I thought I'd start a thread on this, as I've never come across anything that automates the process well. Maya's "layout UVs" is pretty crappy, although it can be a starting point to at least get your UVs to roughly the right size.

Anyone got any cool methods for maximising their texture space, or does everyone still just eyeball it and take the jigsaw puzzle approach? Trial and error?

I hear good things about Wings 3Ds packing tools, and the pro edition of UVlayout can also make it a bit easier. Any good results with those or others?

Replies

  • arrangemonk
    Offline / Send Message
    arrangemonk polycounter lvl 17
    uveditors suck anyway...

    best is to copy the mesh, make it plane, add a planarmap and morph it back to its orginal shape hehe
    and layout is something you should do by hand!
  • rooster
    Offline / Send Message
    rooster mod
    arrangemonk, have to say that sounds like a horrible way of uving.. I think he's looking for an automated way to fit the uvs together though. Personally I do it by hand, haven't come across a good automatic solution but i'd love one too tongue.gif
  • MoP
    Offline / Send Message
    MoP polycounter lvl 18
    Yes I think arrangemonk must be joking, that was a method used in the '90s and it was really error-prone and slow!

    Personally I do it all with Max's Relax, hotkeyed maxscripts for aligning horizontal/vertical based off Chuggnut's scripts, and eyeballing it all.
  • vahl
    Offline / Send Message
    vahl polycounter lvl 18
    [ QUOTE ]
    uveditors suck anyway...

    best is to copy the mesh, make it plane, add a planarmap and morph it back to its orginal shape hehe
    and layout is something you should do by hand!

    [/ QUOTE ]


    HAHA the Paul Steed way!!!11one
  • IronHawk
    Offline / Send Message
    IronHawk polycounter lvl 10
    How much space do you allow for between islands if any? Does getting to close cause any problems?
  • CrazyButcher
    Offline / Send Message
    CrazyButcher polycounter lvl 20
    think about mipmapping, with each mipmap dimensions are halved. so each mipmap you loose 1-2 pixels (rough, might be even more with bilinear filtering over the edges, hence padding is a good thing)
  • killingpeople
    Offline / Send Message
    killingpeople polycounter lvl 18
    recipe for a happy me:
    stitch and move = hotkey s
    relax = hotkey r
    align vertex features (see chugnuts)
  • Sayanora
    Offline / Send Message
    Sayanora polycounter lvl 11
    My method is almost identical to Kp's. Recently, I've incorporated Polyboost into my arsenal thanks to a friend's preaching of its awesome. It has all of the chug tools, without the alignment f ups. You can hor/vert align multiple loops without them all collapsing in on each other. A god send to say the least.

    It'll cost you a $100, but it's worth the price tag. The modelling tools are also kick ass. Check it out!
  • Sage
    Offline / Send Message
    Sage polycounter lvl 19
    uvlayout does a great job at packing, but I just eyeball it and do something similar to what Mop mentioned with the relax tool. I just keep a checker board texture and make sure it matches across the uv islands and place the big chuncks first and then decide where the little parts will go.

    Alex
  • warby
    Offline / Send Message
    warby polycounter lvl 18
    you are gonna want to leave at least 2 pixels for texture filtering interpolation and maybe some more for mipmaps if you have alot of very different colors across your texture that might bleed over to one of the other uv shells when the object is further away from the camera
  • CheeseOnToast
    Offline / Send Message
    CheeseOnToast greentooth
    Just to be clear, I'm not looking for methods to create UV maps, just how to make best use of texture space with your already pristine UVs laugh.gif Seems like everyone is still doing it the oldschool way, by eye.
  • MoP
    Offline / Send Message
    MoP polycounter lvl 18
    Automatic solutions never seem to do as good a job. Also they tend not to take into account the methods in which an artist would prefer to paint various sections (ie. you can get away with more stretching in less detailed areas, and you usually want to paint things on a certain angle to make it easier on the brain when painting).

    They are fine for stuff like lightmaps or UV sets which are going to be automatically generated off other geometry. For anything an artist is going to have to interact with, I'd say that the "oldschool" way is still the only real option.
  • arrangemonk
    Offline / Send Message
    arrangemonk polycounter lvl 17
    max pelt is some good, but the seam system is very ugly..
    i always use the split function in edit poly, its way faster
    and relax dialog is very importand, because the peltmap alone sucks hard^^

    another tool to automate uvmapping were exporting it to obj (with seams) and put it throu unvold3d or something..^^
  • Neox
    Offline / Send Message
    Neox godlike master sticky
    [ QUOTE ]
    but the seam system is very ugly..

    [/ QUOTE ]

    Huh what? The point to point seam is way faster then using the split funtion, and stitching parts together is way easier to do as the mesh is not really split.

    I do it like kp does, planars /sometimes pelts) relax, stitch, and chuggnuts tools are the functions i'm using almost all the time.
  • Daz
    Offline / Send Message
    Daz polycounter lvl 18
    [ QUOTE ]
    Automatic solutions never seem to do as good a job. Also they tend not to take into account the methods in which an artist would prefer to paint various sections (ie. you can get away with more stretching in less detailed areas, and you usually want to paint things on a certain angle to make it easier on the brain when painting).

    They are fine for stuff like lightmaps or UV sets which are going to be automatically generated off other geometry. For anything an artist is going to have to interact with, I'd say that the "oldschool" way is still the only real option.

    [/ QUOTE ]

    What that man said. I always have this fight at work. The guys who rely heavily on the pelt/auto solutions have a harder time in Photoshop. They have these crazy layout where the shells are upside down and at generally funky angles. *Much* harder to 'read' in Photoshop and much harder to do stuff like very quickly lay down overlays for texture, grunge etc if that have a directional pattern in them. Attempting to keep things the right way up where possible makes texturing way easier imo.
  • Mark Dygert
    For some projects I have 2 sometimes 3 sets of UV's.
    1) Auto unwrap, every poly in its own space often a nightmare.
    2) Artist Friendly UV's often broken across several templates so the pieces are easy to paint and easy to understand.
    3) Final optimized UV's, often a chaotic nightmare but very engine friendly. Final maps are baked from the artist friendly UV's often compressing the pieces down to fit on one map.

    Most of the time I'll start off with a automatic unwrap like flatten with the angle set pretty high so the pieces won't fracture as much. Then stitch some of the pieces together, relax and then pack groups of pieces and place them in squared off areas. Let me be clear I do not square off my UV pieces but put them in groups like a pipe or hand and put these groups in a certain area just for organization. I often have to pass my UV's off to 2D artists and its critical that they waste as little time as possible trying to make sense of the chaos, or don't waste time painting on tiny pieces they think are important only to find out they "missed the big E on the Eye Chart".

    I color code the pieces so they have some idea of what is important and what isn't. I do this with smoothing groups, material ID's and a few scripts. Basically I select the whole mesh and assign it the "low priority material" then I select the important pieces and assign them the "high priority material". These materials have different colored custom checker patterns. I then render out checker color maps using RTT, and then render templates from the UV editor. I use specific colors for the wire and solid pieces as I have a photoshop action that sorts these pieces to different layers and pastes in the checker patterns. These final PSD templates are what I hand off.

    It seems like a lot of work but actually its takes longer to explain it all then it does to do it. And if you do it right the first time everyone wins not just me.

    After I pass the model off to the 2D artists I create a new optimized set I'll later bake the artist friendly to.

    So yea a lot of eye balling mixed with some automated arranging.
  • El Z0rR
    In blender 3d you can just create seams then hit unwrap LSCM and that gives ok results automatically and you can live unwrap by pining certain pieces of UVs and stuff. Seems ok to me, but I'm guessing the Max/Maya etc way is more conventional.
  • Michael Knubben
    Roadkill's unwrapping is based on Blenders', isn't it? So yeah, its unwrapping is quite good. I've never actually gotten to that part of Blender yet due to it's unconventional GUI (this is me being polite, take note), but I'm hoping the new gui'll be good. And if not that they'll make it easy to customise.
    Not to turn this into a discussion on Blender though, let's leave it at that.
  • CheeseOnToast
    Offline / Send Message
    CheeseOnToast greentooth
    I really wasn't talking about creating good UVs. Most people here already know how to do it, myself included, and there's loads of tutorials on it for those who don't. It's the step after creating the UVs, ie. fitting them efficiently into the allocated texture space, that I was trying to improve on.

    Uv creation has moved on a massive amount in the last few years, but there's still not much to help the artist arrange them efficiently in the 0-1 space. Most of the automated packing tools don't work very well in my experience.

    Vig, don't you find you lose some of the texture quality when you bake it to the optimised map? It's an interesting way to work, but it still involves you eyeballing the UV islands for the best fit in the end.
  • Mark Dygert
    it really depends on how much I shrink the pieces and what RTT settings I use. Normally I don't resize the pieces that much and if I do its down not up. I mostly just rotate them or leave less pixels between each piece (still accounting for mip loss). The template I hand to the 2D artist might only have the important pieces on it, and I might bake in some base max materials I've come up with, like copper, brass, concrete, to help get the ball rolling.

    It really depends on the shape of your pieces if the auto arrange tools can do an effective job. It's been my experience that it does a bang up job on standard shaped pieces like cylinders cones, triangles and boxes, which when I was doing enviro art was 75% of what I dealt with, so it saved massive amounts of time, it would also space them perfectly to a specified amount of pixels which would take a few min to eyeball.

    It also does a better job on smaller selections of pieces. It tends to do a poor job when you select every piece and tell it to arrange it all at once and it really falls apart when the pieces are non standard like a pelt mapped hand. So it depends on what you need to arrange if it will do a good job or not.
  • sprunghunt
    Offline / Send Message
    sprunghunt polycounter
    For environment stuff I just use Unfold (it's been mentioned in another thread) even if I have to clean the result up a bit it's still faster. I sometimes use pelt if it's an organic shape.

    Oh and if I'm trying to pack pieces into the 0-1 UV space I always put the largest sections in first. You can then squeeze the smaller bits into spaces between the big bits.
  • Xenobond
    Offline / Send Message
    Xenobond polycounter lvl 18
    Here's a bit of what I tend to do. Maybe it'll be helpful to some.

    I uv sections as I go, and start grouping them together in whatever way makes the most sense. I set aside any alpha bits that I can keep seperated so that when I start placing stuff, I can keep them together without worrying about alpha s creeping into other uv space later on.

    Then when I'm ready to start laying them out on my page, I'll usually start with the largest piece (I keep them all the same texel scale as I can) and uniformly scale it along with the rest of the bits to fit the bounds of the page.

    Next piece is the next smallest. I'll see where that fits best, try moving the two around and rotating them by 90 degrees if necessary. I keep doing this till there is little difference in scale between the smaller bits.

    The smaller bits get put in wherever they fit best, and I usually try to keep them near any associated chunks. As I'm doing this, any unmirrored pieces can start to be folded into itself to save on more space. If there is one piece mirrored on top of another, I'll usually also mess with flipping them horizontally/vertically to see if they fit any better.

    It mostly boils down to a puzzle game like Tetris. Most of the time I try to fill the corners in first to see how much space is left in the center. This helps let me know if I'll need to scale everything down again later.

    Maybe I should make a vid of just that sometime. I finally got Max installed on my home pc after installing Veesta. :S

    bootgal_wires.jpg
  • El_Guiri
    I've been using "unfold3d" for some time now. it does a great job at laying out to the 0-1 uv space.

    I do a lot of eyeballing (habbit) but i do prefer unfold3d over similar tools as UVlayout, etc.
  • sir-knight
    Offline / Send Message
    sir-knight polycounter lvl 10
    This was my 2nd unwrap evar... of the same character that was my first unwrap evar laugh.gif

    I used max's pelt system and a few planars... but I swear I had the tetris music playing over and over in my head as I did it.
    feliciauvs.png
Sign In or Register to comment.