– How to optimize your UV maps –

Okay so it’s time for another tutorial (that is long overdue)
This time im going to be teaching you how to do your UV maps right.

A lot of creators on SL do not understand the importance of optimizing their UV maps. They arrange their UVs in the most mentally lazy ways possible, or dont even bother doing that, just leaving it how it is after its been unwrapped.

uvbad

Understanding the importance of good UV layout.

Good UV layouts let you save texture memory, you can fit more detail on your texture without having to increase its resolution.
From a user’s perspective, the second life client is limited to roughly 500MB of video memory (and over 1GB for 64 bit viewers), a 1024×1024 texture is 4MB big, a 512×512 image however is just 1MB big. Smaller texture sizes means faster downloading, more textures can fit in your video memory and less lag.

image-sizes

From a creator’s perspective, better use of available UV space means more texture detail, less blurry or stretched out textures. You can pack a lot more things on a single texture image, not having to split it up into several different images or use ridiculous texture resolutions.

Heres an example of what i mean, this is an unoptimized 1024×1024 texture.
unoptimized

Red color shows unused UV space that has went to waste.
Purple shows things that the player will never see, resulting in more wasted UV space.
Green shows the only surface area that the player will ever see, all of this green stuff could have been easily fitted on a 512×512 image or even smaller!

optimized
with bad UVs, no body wins, the users have to wait longer for textures to download, bloating their texture memory, increasing their rendering weight, and creators still cant really put all that much detail into their things even if they max out the resolutions.

So how do you make your UVs all neat and tidy?

Well first of all, sit your booty down and take a moment to get familiar with the UV tools.
Look up some UV tutorials on google or youtube, memorize the tools, if you have a bad memory, take notes! and practice a little. If you cant do something as simple as that, you have no business in creating content for SL.

The example we will work with
1024
Now that you know how to use your tools of trade, take your unwrapped UV, rotate, scale and arrange the pieces on the page along a corner till your UV forms a square or a rectangular shape, witch ever the circumstances allow you to do. Size of the things camera doesn’t see or tings that have no detail, can be smaller to save UV space.

Once done, scale the UV to take up the whole page.

uvpage
Now if you got yourself a rectangular shape instead of a square like i did in this example, do this (the following example is for blender but similar process can be used for any other program)

fill
Just scale the UV to take up the rest of the remaining UV space.
Than click the new button under the UV window to create a new texture and set it to 256×128 or 512×256 or 1024×512 if your UV is a horizontal rectangle like mine, or 128×256 or 256×512 or 512×1024 if your UV is a vertical rectangle.

The UV page will take the shape of the texture you load or create.512

what resolution you should go with depends on how big the object is, relative to the average camera distance to it, or how much detail it will have.

If lets say its something small, like a shoelace loophole, it can be a tiny image, if its something as big as an avatar body, you can go all out on resolution.
If its a smooth surface part with little to no detail on it, you can also go with smaller resolutions, paying little regard to how big the part is.
If its a part that has text or some other pattern on it that will end up too blurry and pixelated, you need higher resolutions.
To make this more simple, a 1024×1024 resolution image for a button on your jeans are a pants on head retarded waste of texture memory.

Tip: Use UV test maps, you can see wich pieces have too much texture resolution  and witch dont have enough of it and adjust it accordingly.

uv_test_map_by_samuka3000

uvscale1

uvscale2

And that’s pretty much it.

Advertisements