Jump to content
Sign in to follow this  
Rhys Goode

Joining meshes and UV maps

Recommended Posts

I am using Blender 2.69, and getting a bit frustrated.  I have two meshes that I want to join. Each is assigned to different material, and each has been UV unwrappped.

When I joined the two meshes last week, I was left with two UV maps, and I could sort them out using the different materials, and either apply different textures to the different materials, or edit the UV map so that I could use one texture for both materials.

 

Today, when I join the two meshes, only one of the UV maps survives.  The other materiel has its UV map collapsed to a single point.

I think I am doing exactly what I did last week, when joining worked fine.  But today, I can only get one UV map to survive the join.   Could I have changed some setting in Blender?  

Share this post


Link to post
Share on other sites

Thanks for that tip, Dree.  That had escaped me.  I only recently learned how much naming can play a factor in Blender for a variety of reasons.  Naming textures, objects...UV maps!

Share this post


Link to post
Share on other sites

Does anyone know why this was changed? It seems to me that to destroy a UV map without reason, when you could always keep it somehow, should never be a good idea. Maybe there's a sensible reason, or maybe it's a bug. What do you think?

Share this post


Link to post
Share on other sites

Apparently the discussion was started by Gaia Clary in Mid October :

http://lists.blender.org/pipermail/bf-committers/2013-October/041926.html

If you read through the follow ups to Gaia's question you will find the reasoning behind not changing this implementation.  I haven't yet read to the end, so perhaps there's some compromise solution expected further down the line.

Share this post


Link to post
Share on other sites

Hmm. More like post-hoc justification than reasoning? It's quite an imposition to expect people to name maps in such a way that they will join as expected with as yet unknown other items. However, joining by index is probably even more unpredictable, and since you can't change the idexes, can be much worse because there's no way out. I think the robust solution would be to no join them at all; use the numeric postfix convention as elsewhere to deal with duplicate names, then allow explicit joining. Then an optional join-by-name setting could be added for those whose workflow would benefit.

Still, at least the solution is clear. Check the names before you join to get what you need at the end. If both mesh have just the default map name (as mine nearly always do) then the behavior is unchanged.

Share this post


Link to post
Share on other sites

I understood none of that discussion, no surprise there.  However I quite sure that after making the same mistake of not changing names of joined meshes 99 times in a row, on the 100th I will remember to do it. :-[

Share this post


Link to post
Share on other sites

Quote: "The fix is to change both UV map names to the same name and then join."

 

Ok, where do I change the name of the UV maps to the same name?  When I change the name in the UV editior window it appends a number to it.  The default uv name is 'untitled' in Blender 2.69.  I can use an older version of Blender but I'm guessing that if this is now expected behaviour then I better learn the workaround!

 

Thanks

Black

Share this post


Link to post
Share on other sites

Properties window, Obeject data tab (triangle icon), UV Maps section: Select the map in the list and rename it in the name edit box. Remember - a UV map is not an image. Its data can be represented as an image, and it can by used to fit an image onto the mapped surface, but it is not itself an image. It is just a list of 2D coordinates associated with each of the 3D vertices of an object (in SL - elsewhere it can be a bit more).

uvmaplist.png

Share this post


Link to post
Share on other sites

Thank you Drongle.

I think I have a different issue then as I never change the UV Map names as you’ve shown – I do however name my UV Texture names to match what is being worked on.

In Blender 2.67 I make a high poly model and bake out the texture/ao etc.  Make a lower poly model, unwrap and assign a new material to it.  When joined I have 2 materials (as expected) 1 for highest LOD and 1 for the lowest LOD.  However, it would appear that in 2.69 the second material also disappears.  I could probably make the model using a single material but this is causing some major head scratching.

Any thoughts?

Note:  I do make all the LOD models myself but for simplicity here have suggested that only 2 are made.

Share this post


Link to post
Share on other sites

I'm somewhat confused.  What exactly are you joining?  The high and low lod mesh objects?

Using v. 2.69 I just took 2 objects and assigned 2 materials  per object  (total of 4 materials)  I assigned seperate textures to each of these material face groups.  Then, after confirming the UV names for each object were the same, I joined these two objects.  All materials were joined and retained and each material group's assigned texture was still conrrectly assigned.  So I'm not clear on what your workflow was and what you were attempting to do here.

Share this post


Link to post
Share on other sites

My bad - I hadn't applied the material to the second object so that was why the second material wasn't available in the materials list, just tried this on a 2 single cube objects with 2 uv texture maps.  I am going to try this again tomorrow and if I see an issue that is not expected (as per 2.67) I will post again and ask for guidence.

Thank you

Black

Share this post


Link to post
Share on other sites

I'm confused too. Why join high-low LODS. They have to be separate objects both for baking high LOD detail to low LOD and for uploading to SL. Anyway, it sounds to me as if you are confusing materials and UV maps. They are not the same things and lead separate existences. A material may use a UV map to apply itself to the mesh, but that is the end of the relationship.

Share this post


Link to post
Share on other sites

Sorry guys, think I have managed to confuse myself here to…  In my latest project I am using a transparent texture for the lowest LOD model.  This is the same texture as was baked but with transparency.  Instead of just adding a single triangle to hold the material I was adding a plane with the texture applied and scaling it down.  I now realise this approach is wrong and discovered I can add the plane to the model and unwrap it without issue at the lowest LOD and just change the UV mapping.  Luckily for me this is my first project with transparency. 

Still learning!

Black

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

×
×
  • Create New...