PDA

View Full Version : What is Lightwave doing with my incomplete UV maps?



Lightbringer
11-10-2005, 04:00 PM
i have a mesh. i created a single UV map for that mesh. the UV map only covers part of the mesh (the part that needs a painted texture).

the entire mesh is a single surface. in the color texture for this surface, i have added an image map layer using this UV map. this seems like a perfectly reasonable thing to do, but things are not behaving as i would expect them to.

first of all, the edge of the UV mapped area on the model is jagged.

http://fearthesheep.com/dump/jagg.jpg

then, if there are any texture layers underneath this image map layer, their opacity setting is being ignored.

http://fearthesheep.com/dump/opacity.jpg

can anyone tell me anything about this? what does Lightwave do to points that are not defined on a UV map when that map is used for a texture layer? i thought it would simply leave them alone, but it is doing something, and i'm having a hard time figuring out what that is exactly.

stevecullum
11-10-2005, 04:36 PM
Is the mesh a sub-d or poly's?

It woud be helpfull to post up the .lwo file your having problems with.

Lightbringer
11-10-2005, 04:56 PM
it's sub D. the jagged edges are sub-d triangles. higher levels of subdivision result in more smaller triangles. here is what happens when the object is not subdivided.

http://fearthesheep.com/dump/noSub.jpg

the lwo is a bit of a mess, and it would take a while to clean it up. i could alternatively create a simplified version of the situation and post that if necessary, but i'd rather see if someone can diagnose this based on the description first and save myself the trouble.

stevecullum
11-10-2005, 05:41 PM
without looking at the mesh I would say it's the sub'ds stretching to much at the join. If you add a couple of loops in that area, it should sholve the problem.

evenflcw
11-10-2005, 05:54 PM
In Layout subD meshes are subdived and tripled. As such each polygon turns into several smaller quads and each of these quad turns into two triangles. One of every pair of these triangles which is closest to the UVed area is connected with two points THAT ARE UVed. As more than half the points of these triangles are UVed I'm guessing LW takes the easy way out and simply considers them UVed.

There is an easy trick to fix this problem - Alpha out the bad areas using weightmaps and gradients:

For each UV map also create a weightmap which has all the points in the UV map set at 100%. Quickest way to do this is by selecting the polygons in the UV viewport, and create a weightmap with the default settings. This creates a UVmap that sets all the necessary points to 100% and completely excludes all other. Next, in the Texture Editor add a gradient alpha layer above the UV image layer. Add one key at 100% and another at 99.9%. Make all keys above 99% black in color, so all that remains is a thin strip of white between 99% and 100%. This clips out the triangle mess entirely and you'll get a nice sharp border without jaggies (unless you get reeeaaally close).

I attached a simple example scene and screenshots demonstrating the trick.

Lightbringer
11-10-2005, 06:07 PM
great, evenflcw! i had used a weight-map trick like yours on another model actually. i should be able to adapt it to solve this problem. i'd still like to know how in the name of all that is holy an image map layer is changing the opacity of another texture layer. that's just wrong.

i'm not so sure about the explanation though. why would Lightwave interpolate the UV texture towards a point that is not UVed? two out of three does not a triangle make. it makes a line. an edge. it doesn't make sense to fill in the whole triangle.

there is another aspect to this that i didn't mention. the UV map is divided into two pieces. on the section shown in the images, the seam manifests the cursed saw-teeth (technical term). on the other section, the edge is perfect. a mystery for the ages. or at least until i post a model and someone tells me how i broke it.

thanks, all.