Jump to content
Eyvus

How to properly transfer the UV map from a high poly to a low poly

Recommended Posts

So I have been stuck on this issues for several days now, all the google links to similar issues have long since become purple. Two nice members of the Houdini discord tried helping me, yet i still can't seem to get this to work.

 

I am working on a game that has quite a few pipes. So an optimized pipe building tool is simply a must for us. I can get the geometry generated perfectly fine, but am having an issue with optimizing it without severe uv stretching. This issue occurs from removing inline points with the facet node on the original path curve.

 

I am trying to transfer the UV map from the hi poly:

http://imgur.com/qMP3XGg

onto the low poly.

http://imgur.com/6zx2Nnx

 

I would prefer to stay away from sweeping. I understand sweeping gives very nice uvs, but this is a branching curve and the branches wont connect like polywire. Using boolean on the intersecting geometry gives less desirable geometry and messes up swept uvs.

http://imgur.com/CvbR631

 

It doesn't necessarily need to be uved like this to begin with. If I can find another way of uv mapping it from the "Path_Fused" node I would be just as pleased.

 

File Included

Branch Subnetwork_v1.hip

Edited by Eyvus

Share this post


Link to post
Share on other sites

branch_uvs.png.95768015072c5a6adb4e07601bc4cedc.png

You can try to redo UV unwrapping with UV Flatten using PolyWire's UVs as a separation attribute. To bool properly, promote UV attribute to vertices. Then it won't change after union. Output geometry is a combination of disadvantages, though. Out of curiosity, what is so great about using watertight geometry in your case? From my point, it removes very useful properties and adds extra problems to handle.

branch_uvs.hipnc

Share this post


Link to post
Share on other sites
On 8/26/2017 at 10:47 PM, f1480187 said:

You can try to redo UV unwrapping with UV Flatten using PolyWire's UVs as a separation attribute. To bool properly, promote UV attribute to vertices. Then it won't change after union. Output geometry is a combination of disadvantages, though. Out of curiosity, what is so great about using watertight geometry in your case? From my point, it removes very useful properties and adds extra problems to handle.

I want watertight geometry because these pipes will be in the players' faces quite often. Its a significant element in the setting we are trying to create. However, if I have a preference for watertight geometry even in the light of very useful properties in this circumstance, its more out of ignorance. I have been learning Houdini for just over a year and have focused primarily in procedural generation solely using nodes and referencing. I have yet to even dwelve into attributes, let alone scripting. But I did manage to take a lot from what you showed me so far, particularly "neighbourcount(0, @ptnum) > 2"

 

Out of curiousity, do you know whats up with some parts of the uv refusing to scale equally with other parts of the mesh? In your photo, you can see it occur. That happens to me quite a bit, yet don't know whats up there.

 

Share this post


Link to post
Share on other sites

Well, there are cases where watertight geometry may have more advantages than using sweeped tubes with nicer UVs and lower overall vertexcount. I would compare both.

 

12 minutes ago, Eyvus said:

Out of curiousity, do you know whats up with some parts of the uv refusing to scale equally with other parts of the mesh?

I forgot to do my homework. In UV Transform replace this expression:

piece_area / uv_area

With this:

sqrt(piece_area / uv_area)
  • Like 3

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×