π¨ HPaint is a viewport drawing utility for Houdini, allowing you to digitally paint on any geometry.
The concept is similar to Blender's Grease Pencil utility, with extra features allowing you to also perform 2D Animation tasks, draw in your viewport with Screen Drawing, control your drawing methods and enable geometry masking, as well as 'layer' your strokes with surface distance offsets and primitive groups.
Each stroke is a 3D card with UVs - allowing you to texture your strokes similar to using a custom brush in Photoshop.
- Updated for Houdini 20.5
- Major optimizations for cache evaluation, drawing and data handling.
- Added
Colour Pickerutility, that samples theCdattribute from the input geometry usingMMB. - Added
Disable Geometry Masktoggle to allow strokes drawn off-geometry.- Strokes are evaluated from the last normal-plane distance of the geometry before it went off-geometry.
- Strokes have an intelligent repositioning algorithm to allow strokes to look fluid no matter how they are drawn.
- Revamped
Screen Drawingfunctionality.- You can now screen draw in any present viewport. Previously you could only draw in camera view.
- You can choose between
Continuous(Always screen draw at theScDraw Distance) andOnce(Draw from the first depth-picked position) modes. - You can hold
Shift + MMBto pick theScDraw Distancedepth from your present viewport.
- Added
Output Curves Onlytoggle, which disables stroke card construction. - Added extra visualization options in their own tab.
- Modern tool-tips have been added per 19.5 viewer state guidelines.
- ποΈ Digital Painting on your Geometry: Plug HPaint into any SOP and start drawing! By default, HPaint allows you to sample and draw on geometry and mask your strokes to the geometry itself.
- βοΈ Screen Drawing: HPaint offers versatile options for screen drawing, with the
Depth Pickerutility, depth sampling methods and an interactive screen distance parameter. - π¬ 2D Animation: Get started instantly with the
$Fframe tag in your filename and theDisplay Nearest Frametoggle to start animating like you would in softwares such as Toon Boom! - π½ Smart Disk Caching: Save your HPaint cache out and share it with other HPaint users - enabling collaborative workflows.
Download the HDA file and install it to your houdini##.#/otls/ folder. For detailed instructions, please refer to the Houdini documentation.
After installing HPaint, open a SOP context node view and connect HPaint's single input to any geometry, preferably with the N normal attribute configured correctly. A test geometry works well for initial usage.
With the display for the HPaint SOP enabled, move your cursor to the viewport and press Enter. This will display the tool-tips for HPaint, letting you know that the initialization has worked as intended.
Begin creating strokes by holding LMB on your geometry - as you would in any other digital painting software! If you want to draw everywhere, toggle Screen Drawing or toggle Disable Geometry Mask to paint wherever you want on the viewport.
If you have any feedback or run into issues, please feel free to open an issue on this GitHub project. I really appreciate your support!

