Power Of Two
This is an important and frequently misunderstood part of the Developing process, and often the reason your 3D models and textures might not look as good in IMVU as they did in your 3D mesh building application. It is simplest to say that IMVU’s 3D engine (like many game engines) is optimized to work best when textures applied to 3D meshes are a variation of a very specific set of dimensions. For performance purposes textures are stored and rendered at specific dimensions that are based on the power of two. That is, textures with dimensions that are 2, 4, 8, 16, 32, 64, 128, 256, and 512 pixels in height or width.
It is important to point out that if a texture does not follow these specific dimension requirements that IMVU Studio will STRETCH or CRUSH your texture so that it will comply. If you have ever tried to distort a image you know what a disaster it can be as the pixels desperately try to retain the image with more or less bits of information… the same is true with IMVU textures.
Any texture that is 512 x 512 or larger will be automatically re-sized by the IMVU code after submission to be 512 x 512 (IMVU Studio Only). This is done to protect the end IMVU user from waiting forever for your giant texture to download and render. Obviously, this process can make your product look different than you intended so it is best to provide IMVU with textures that are sized correctly.
If you attempt to submit a texture with dimensions that are not Power of Two then IMVU will do its best to find the closest equivalent dimensions and re-size it to that. Sometimes the dimensions are close enough that this only degrades the original texture a little, but other times it can really ruin the quality of your resulting product.
Ideally, the pixel dimensions you should work within are 16 x 16, 32 x 32, 64 x 64, 128 x 128, 256 x 256, and the maximum dimensions of 512 x 512 (IMVU Studio Only). You can also work with any variation of these numbers, so 32 x 512 is OK, just as 128 x 256 is great as well. Where trouble begins is when you have a texture that is 183 x 430… then you are in for some trouble.
If you are unsure if your texture is the right dimensions, be sure to double check the Texture Assets window when you import your texture files.
Oversized Textures Get Squashed
As a Developer you want to make sure your textures are as beautiful as possible, so it is tempting to make things like sky backdrops and even clothing textures as large as possible to insure every bit of detail is visible. In the case of textures larger then 512 pixels, that stunning 1024 pixel (which is a Power of Two dimension) sky texture WILL be reduced to the Max dimension of 512 before it is submitted to the IMVU Shop. So, it is always recommended that you make your textures look their best at the appropriate size before you apply it to your mesh.
A great way to make sure everything is looking its best is to double check all your texture dimensions and adjust as you see fit before hitting that Upload button.
Smeary Stretchy UVs are sad
Make sure all UVs create squares when checking the mesh, no stretching or smearing.
Single UV set/channel for all materials
IMVU does not support multiple UV sets/channels so it is important to have all UVs in a single set/channel. Here is an example of how multiple UV sets/channels will show up in Autodesk Maya:
In this example you would want to move all ‘UVChannel_1’ UVs to ‘map1’.
Number of materials should be kept to a minimum
In the example below, we can see there is a lot of empty space between the 5 images. Especially since these are all connected to the same mesh, it is good to pack them into one image, unless more resolution is needed. This change would bring the five, 512×512 images down to just one.
UV’s should use as much of the 0,0 to 1,1 UV space as possible.