UV Mapping Considerations

Now you know what UV space is and how RizomUV unwraps under the hood, there are a few fundamental concepts which apply to UV mapping no matter your model, UV mapper, single-tile UV map or set of UDIMs:  

  

  • When you start modelling, make sure you build proper geometry, and keep in mind your intended end result can impact your UV map and its layout. If you're, i.e. creating a game model, you'll need to be very aware not only of your high-res meshes' detailing so the lower-poly mesh can hold it but also how you cut your UV seams, as every cut means a doubled vertice count in-engine. Neither Unreal or Unity support UDIMs natively at the time of writing, which means your map needs to fit on a single tile.

  • It’s never too late to start thinking about normals and smoothing groups; A lot of artists seem to think of a normal map as a glorified bump map. This is not entirely correct, as it has a few more uses than height or depth. Super-simplified, normals are the directional pointers for a polygon (face), or group of polygons. The direction they face defines the direction of smoothing, and the side – or direction your materials display on. For example, if you’re creating a scene inside a box, it’d be natural to have the texture on the box’ inner walls face inward, not outward, so you could see it. You define this by setting the direction of your normals. Most modellers have a function that let you see the direction they’re facing in, they are that little pointer in the middle of a polygon pointing in- or outwards.

  • In addition to being items you can hand-paint your detailing on, Normals also control smoothing groups: A smoothing group’s function is to make your model appear smoother without adding polys to the mesh. You could say it’s a sort of pseudo subdivision surface where, if two polygons or more share an edge and are members of the same smoothing group, they will render as a smooth surface. If not, a hard edge is created. This will render as a corner or an edge, and this edge will need to be separated come UV mapping time to avoid baking artefacts. This means that even a simple thing like tidying your mesh as you go can yield baking, timesaving and UV mapping benefits, as it'll steer you clear of tasks like leftover poly-cleanup, too many deleted poly-fixes, and tidying unclean edges, which often only become visible and a potential cleanup time sink when you start UV mapping or baking

  • If you’re UV mapping a hard-edged model, be cautious with flipping islands and stacking them, especially if you’re mapping on a single UV tile rather than a set of UDIMs. Even though it can really speed up your workflow and save you UV mapping time to only map half of your figure before copying, flipping, welding or stacking your shells, you run the risk of weird lighting and lighting seams when doing this. A workaround for this is to use an FBX export with tangents and binormals checked, but it also helps to use multiple, non-flipped UV maps or sets, at the cost of load and the convenience of having everything in one map

  • A UV map needs to be as distortion-free as possible. This means that a texture or shader won't look stretched or pinched when applied onto the model. It also needs to maintain scale. Textures applied onto a model should not show disproportionately to each other, like the head of your mech having a much smaller scale and details than its torso, and then the arms having a different scale altogether. You can of course work around this by, i.e. using triplanar mapping when working in, i.e. Substance, but the best thing is to get it right out from the start.

  • A good UV map also has edge-margin and shell-padding, especially for game engines. When a game engine renders a texture sheet on a model, it will downsample (reduce) the texture to render it. This can cause different colours around your island seams if the colours of the textured shell and the background are different.  This is called colour-bleed. To avoid this, you add padding to the UV shells when unwrapping to enable whoever is texturing the model to add a "padded" edge with the same colours when texturing to avoid this from happening. You can calculate how much edge padding you need by multiplying by 2: 
    •  256   = 2px
    • 512     = 4px
    • 1024  = 8px
    • 2048 = 16px
    • 4096 = 32 px
    • 8192  = 64 px
    • For non-game engine renderers, a few pixels are often enough to avoid texture-bleed and normal mapping artefacts when baking, and almost all UV mappers have functionality for this. Use it. 

  • It also pays to keep your layout tidy and economical, with similar items arranged together, or stacked on top of each other where possible to save space. This will allow more room for the items needing finer detailing or having higher visibility; The larger the item on a UV map, the larger the texel density, meaning the more space it gets for painting and detailing.