Cloth Retopo Tool
Tool Description
This tool is for cloth creation in Houdini. The tool takes the inputted cloth geo and lays it out in uv space to keep the cloth flat while retopologizing. The tool snaps the user to a front facing, orthographic camera for an easier workflow.
The key features:
- The ability to fill large sections of cloth with one click, whether it's filling a hole in the cloth or connecting two newly retopologized mesh islands
- The ability to rapidly create new polygons by holding down shift and dragging through plotted points
- The ability to add and delete newly created quadrilaterals
Breakdown
This tool started with many iterations. I tried just making it fully procedural and the user would simply draw lines that would lead the procedural generation of quadrilaterals. That worked decently but lacked the control necessary to make the tool useful in production.
That's when I settled on remaking a quad draw tool like Maya's in Houdini with the addition of dropping in grids to quickly fill sections that would simply be mindlessly quaded with a regular retopo tool.
That led to diving into viewer states in Houdini. Viewer states handle the actual viewport interactions a user can have in Houdini. Many other nodes native to Houdini use a viewer state so the user is not forced into only using parameters to drive their tools. For this tool, I knew I had a number of specific objectives to be accomplished using the HDA's viewer state:
1. Allow the user to create and drag points by using the left mouse button in the viewport if the click intersected the reference geometry.
2. Snap the created points to the border of the reference geometry for a consistent silhouette with the original geometry.
3. Be able to fill sections of geometry by hovering over the empty section, hotkeying into the procedural fill context, and pressing the left mouse button.
4. Keep all button mappings as close to Maya's as possible for ease of use and operation
5. Speed up quad generation by allowing the users to plot points and hold shift while dragging through grid points to fill the quads without having an excessive amount of clicks