UV Stacker is a Houdini Digital Asset (HDA) that figures out which UV-shells share similar surface area through either its geometry or uv space, and stacks identical or near-identical ones. The user gets control over a couple of parameters, which allows the user to get their desired result.



The tool provides you with two ways of figuring out which shells should be stacked: UV-Area & Geometry-Area. It is recommended to use the default UV-Area method, since that provides most accurate results. Should the user however want to differentiate stacking of UV-Shells by differences in geometry, that option should be used.


In some cases, the user has a lot of geometry that only differs very slightly from eachother. In games you would then preferably modify your UVs a bit to overlap and utilize the same texture space to save performance. The "Combine Similar by Threshold" toggle allows you to do that. Simply play around with the slider to lower the precision the tool figures out which shells should be stacked. Please note that setting this value to a very low value will cause non-similar shells to also be stacked. This can be prevented by only running this tool over an isolated group of primitives.


After combining all similar UV-Shells, the user might still want to introduce some variation to remove tiling. Simply enable the "Split Stacked Shells" toggle, and the process will begin. The user now has three parameters to control: Splitting Threshold, Number of Splits, and Visualize Splits.  Splitting Threshold controls the threshold after which the tool will split the stack into the specified "Number of Splits". Should Splitting Threshold be set to 5, and the Number of splits to 3.. The tool will automatically split stacks with more than 5 shells into three as seen above. By enabling the Visualize Splits toggle, you can quickly get an overview of what happens.


  • SaOk 2 months, 3 weeks ago  | 

    Excellent much thanks, just what I was looking for when searching tutorials for UV. :)

Please log in to leave a comment.