Houdini unable to unwrap procedural cliff mesh

   3111   8   0
User Avatar
Member
24 posts
Joined: 8月 2013
Offline
Hello,

I've tried to utilize Houdini to procedurally generate cliff meshes from a landscape slopes to use in Unreal Engine. I've been able to generate the mesh, but for a few days now, I am failing to figure out how to unwrap the low poly version of the generated mesh so that I can bake a high poly normals onto it.


I have tried Labs AutoUV, various combinations of the Autoseam, UV flatten, UV layout, UV unwrap nodes in all sorts of combinations, but I never ever could get any acceptable result without either significant UV distortion, UV island overlaps, poor UV space utilization or excessive processing times.

The main issue that the Labs AutoUV and Autoseam + UV flatten workflow suffered from was overlaps. It was borderline impossible to find any combination of parameters which would not result in large amount of UV overlaps:


The only way to get rid of most overlaps was to reduce merge threshold to 0.0, which then generated large amounts of often single triangle islands which Houdini's super slow UV packer (UV Layout) took dozens of minutes to pack, and caused too many UV seams which caused some issues in the game engine. Not only that, but this also removed only most of the UV overlaps, not all of them. Some UV islands were still projected from weird angles, having some UV faces overlapping each other.

Next attempt was using the entire large cliff chunks as UV islands and relaxing them with UV smooth. This was not slow, but resulted in extreme UV distortions and very poor UV space utilization.

I have asked two of my Houdini user colleagues to have a crack at it, but both of them failed to figure out anything usable. When one finally figured out some approach, the processing time of the resulting solution was so long it was impossible to iterate in a reasonable time.

I am attaching the .hiplc file with the source assets in case someone wants to give it a try.
https://drive.google.com/file/d/1INloIUmhENtIcnDtJgjtorQm0KxV3bLC/view?usp=sharing [drive.google.com]

I'd be thankful for any clues since I've burnt already 3 days on something I am able to do in Blender in 30 seconds. At the same time, doing it manually in Blender kind of defeats the purpose of the entire automatic procedural pipeline and would negate the benefits of going procedural.

Thanks in advance.

Attachments:
Overlaps.png (2.4 MB)
Cliff.png (1.6 MB)

https://www.artstation.com/artist/rawalanche [artstation.com]
User Avatar
Member
829 posts
Joined: 1月 2018
Offline
If you change the AutoUV method from Autoseam to Unwrap that should take care of the overlaps.

Attachments:
Screen Shot 2021-07-07 at 8.39.50 AM.png (258.8 KB)

>>Kays
For my Houdini tutorials and more visit:
https://www.youtube.com/c/RightBrainedTutorials [www.youtube.com]
User Avatar
Member
24 posts
Joined: 8月 2013
Offline
Midphase
If you change the AutoUV method from Autoseam to Unwrap that should take care of the overlaps.
I mentioned already in my first post that I tried that. I tried all 4 methods in the Labs AutoUV node. The first two run out of my 64GB of memory after about 5-10 minutes of processing, UV unwrap takes ages to pack the UVs, and UV autoseam is the one I took the overlapping islands screenshot of.
https://www.artstation.com/artist/rawalanche [artstation.com]
User Avatar
Member
40 posts
Joined: 11月 2019
Offline
This almost gets there, looks to be just the one small area of overlap, could play with the auto seams parms..

Attachments:
Terrain_Cliffs_02_loop_Slice.hiplc (610.6 KB)

User Avatar
Member
24 posts
Joined: 8月 2013
Offline
gt3d2019
This almost gets there, looks to be just the one small area of overlap, could play with the auto seams parms..

Hi, thanks a lot!

Unfortunately, not sure if I did something wrong, but just opening your file and letting it cook, I got quite giant overlap:


Also, I don't think I have obsolete hardware (Ryzen 9 3900X, RTX2080Ti and 64GB RAM) but still it took almost 3 minutes to process, which is not the worst but not great either. I was hoping there would be some faster way of doing it.

Anyway, the slowness I can live with, but the overlaps are still an issue.

Just out of curiosity, is that mesh slice some sort of common workflow for unwrapping larger stuff? Or is it something you came up with right in the moment. My general problem is that if I am a new Houdini user, how do I figure out these things out? I mean I definitely assume some advanced experience will be required for advanced tasks, but I would not expect basic tasks such as generating non overlapping UVs for mid-poly models to require advanced knowledge.

Attachments:
Overlap.jpg (407.9 KB)

https://www.artstation.com/artist/rawalanche [artstation.com]
User Avatar
Member
40 posts
Joined: 11月 2019
Offline
thats strange as from the same file I get this result, it maybe the remesh is producing a different mesh on my machine, I'm not sure.
The first pic is my result from the last file. The second image is from a 2nd attempt, this time using instant meshes to get a more low poly result(around 45,000)that unwraps a bit quicker, around 45seconds(same setup you have but with a Threadripper 2990)
you would need to install instant meshes for this new Hip file.

https://www.sidefx.com/tutorials/houdini-game-dev-tools-instant-meshes-bridge/ [www.sidefx.com]

How do you figure these things? I'd say with Houdini the real benefit is drilling down into what its actually doing, and what it needs to do it, in this case the mesh slice is a simple 1 node way to split the model up(providing additional border seams) then providing a primitive attribute for each slice that lets you stick it in the loop, and then you can put it into single pass mode(in the foreach_end node) that allows you view each iteration, just comes over time I guess as you encounter a problem, drill down into a solution and hopefully gain a bit more insight that helps with other aspects also.

Attachments:
UV_unwrap_First.png (301.2 KB)
UV_unwrap_Second.png (254.7 KB)
Terrain_Cliffs_03_loop_Slice.hiplc (629.2 KB)

User Avatar
Member
24 posts
Joined: 8月 2013
Offline
gt3d2019
thats strange as from the same file I get this result, it maybe the remesh is producing a different mesh on my machine, I'm not sure.
The first pic is my result from the last file. The second image is from a 2nd attempt, this time using instant meshes to get a more low poly result(around 45,000)that unwraps a bit quicker, around 45seconds(same setup you have but with a Threadripper 2990)
you would need to install instant meshes for this new Hip file.

https://www.sidefx.com/tutorials/houdini-game-dev-tools-instant-meshes-bridge/ [www.sidefx.com]

How do you figure these things? I'd say with Houdini the real benefit is drilling down into what its actually doing, and what it needs to do it, in this case the mesh slice is a simple 1 node way to split the model up(providing additional border seams) then providing a primitive attribute for each slice that lets you stick it in the loop, and then you can put it into single pass mode(in the foreach_end node) that allows you view each iteration, just comes over time I guess as you encounter a problem, drill down into a solution and hopefully gain a bit more insight that helps with other aspects also.

Thanks a lot. I tinkered with it some more and finally found something that somewhat works. The processing time is still on the border of acceptable, but it will have to do.

The instant meshes solution is not really acceptable as it removes too much geometric detail which I need to preserve. It goes into a game engine, but it must not be a game looking mesh. It's meant for high end realtime VFX.
Edited by Ludvík Koutný - 2021年7月11日 05:39:03
https://www.artstation.com/artist/rawalanche [artstation.com]
User Avatar
Member
574 posts
Joined: 2月 2017
Offline
I know it`s not the ideal solution for everybody but I purchased a copy of ministry of flat
Webiste of Ministry of flat. [www.quelsolaar.com]

mandrake0 made a hda that links to it within Houdini
link to forum post [www.sidefx.com]
It is the best solution for any UV task I found after tinkering with Houdini, Blender, and RizomUV.
You can just forget about UVs. It takes care of it for you.

Cheers
CYTE
Edited by CYTE - 2021年7月11日 07:20:19
User Avatar
Member
829 posts
Joined: 1月 2018
Offline
CYTE
I know it`s not the ideal solution for everybody but I purchased a copy of ministry of flat
Webiste of Ministry of flat.

I feel like I'm someone who tries to stay in-the-know about new apps, but this one just seemed to come out of nowhere. Looks very cool, how have I never heard of this before just now?!?
>>Kays
For my Houdini tutorials and more visit:
https://www.youtube.com/c/RightBrainedTutorials [www.youtube.com]
  • Quick Links