Best Houdini Utility Entries

   14298   19   13
User Avatar
Staff
1185 posts
Joined: July 2005
Offline
Add your entries to the Best Houdini Utility Category to this thread before the contest deadline.
Edited by rmagee - Nov. 1, 2022 17:09:06
Robert Magee
Senior Product Marketing Manager
SideFX
User Avatar
Member
709 posts
Joined: Feb. 2017
Offline
Hey everybody,

here is my entry for the challenge.
It's no rocket science but can be useful for working with kinefx skeletons.
The "name skeleton" hda`s purpose is to speed up the skeleton naming process.

Cheers
CYTE

edit: updated the hda to 1.1 and fixed a mirroring bug.

Image Not Found
Edited by CYTE - Nov. 16, 2023 06:04:45

Attachments:
NameSkeleton_before.jpg (258.2 KB)
NameSkeleton_after.jpg (295.0 KB)
sop_cyte.nameskeleton.1.1.hda (30.9 KB)

User Avatar
Member
18 posts
Joined: Aug. 2018
Offline

__Blast By Attrib HDA__ [youtu.be]


Hello everyone, this is my entry for the SideFX Labs Tech Art Challenge 2022.
I have a very simple but handy-to-me HDA called "Blast By Attrib".

It does what it says, sometimes we need to split an incoming model into pieces by attributes present.

This hda takes any attribute, either it be primitive or point attribute and blasts the model by those. Also creates a switch node to look through the newly created pieces.
There's an option to create a file cache or an fbx rop in case if you wanna save them to disc.

Thank you! Hope the tool helps someone.
Edited by FJSam - Nov. 14, 2022 00:58:16

Attachments:
Screenshot_6.png (512.3 KB)
SHDA_BlastByAttrib.hda (17.4 KB)

User Avatar
Member
53 posts
Joined: June 2009
Offline
Hextile is a method for avoiding repetition when tiling textures.

The original code has been developed by mmikk and I just implemented it in Houdini.

Original Code:
https://github.com/mmikk/hextile-demo [github.com]

Attachments:
Screenshot_a.jpg (310.3 KB)
Screenshot_b.jpg (274.8 KB)
mohsen.hextilelib.1.0.hdalc (65.4 KB)
hextile.hiplc (265.6 KB)

User Avatar
Member
7 posts
Joined: Sept. 2019
Offline
Hey everyone!

My submission for the tech art challenge is the Extrude Subdivision HDA. It takes an input polygon surface and divides each face to create a “Extrude shaped” surface. It is similar to the Subdivide node in that it divides up all or part of a surface, allowing you to increase areas of local detail.

This tool is meant to help you discover the “Extrude subdivision” field. it's optimized to work fast animated and on high polygon count.
The extrusion can be masked by a point attribute called “falloff” resulting in truly phenomenal animations.

Explainer Video:

Edited by Nitzan Tregerman - Nov. 25, 2022 10:47:53

Attachments:
sop_nitzan.extrude_subdivision.2.23.hdalc (47.3 KB)
nitzan_tregerman_tech_art_challange_2022_v03.hiplc (1.5 MB)
nitzan_tregerman_tech_art_challange_2022.jpg (304.0 KB)

User Avatar
Member
100 posts
Joined: Jan. 2015
Offline
Hello,

Here's a circle packing tool, made to recursively finding circle on a surface, from the largest to the smallest one.
Can be use to partition city parcels, or build abstract graphics.

The testing surface is remeshed by the tool for the distance testing/sampling. As a result the process can take a bit on time on models. The approach is not perfectly accurate, but it might be a starting point to a more mathematical version.



Image Not Found

Attachments:
PackC_Tool.JPG (43.3 KB)
PackC_01.JPG (69.2 KB)
PackC_03.JPG (117.2 KB)
PackC_04.JPG (170.0 KB)
CirclePacking_ExampleFiles.hiplc (218.4 KB)
sop_Qwak.dev.CirclePacking.1.0.hdalc (16.8 KB)

Gameloft
User Avatar
Member
4729 posts
Joined: Feb. 2012
Offline
Hi everyone,

Here is my entry. Hope you find it useful.

OpenCL Volume Convolve SOP

Convolves a volume by a 3×3×3 kernel. It supports OpenCL acceleration to achieve orders of magnitude performance using the GPU.

This operator takes each 3×3×3 neighbourhood of a voxel, multiplies it by a set of coefficients, and combines the result into a total. It can be used for blurring, sharpening, embossing, edge detection, and more.

NOTE:
OpenCL code path is not supported for VDB Volumes.


Note that in the video the performance is less than normal due to 4K recording overhead. But the image shows consistent performance improvement of over 100X speed up on my mobile RTX 6000.



Attachments:
volumeconvolveocl.hiplc (11.9 MB)
VolumeConvolve_SOP_Animatrix.hdalc (36.2 KB)

Senior FX TD @ Industrial Light & Magic
Get to the NEXT level in Houdini & VEX with Pragmatic VEX! [www.pragmatic-vfx.com]

youtube.com/@pragmaticvfx | patreon.com/animatrix | pragmaticvfx.gumroad.com
User Avatar
Member
8 posts
Joined: Feb. 2022
Offline
Hello everyone!

I created this HDA that generates a random walk from the selected surface of the input geometry. Each iteration is a new step of this walk, which results in a continuous line.

The walk is designed so it cannot repeat the same point, which creates an intricate line on the surface or the volume of the input geometry. I created it to be able to design some intestines from procedural generated geometry and to learn some VEX.

Edited by eusebijucgla - Nov. 28, 2022 14:00:20

Attachments:
Random_walk_Example-002-Camera0.png (355.8 KB)
RandomWalkPath.hiplc (763.8 KB)
sop_euju.RandomWalkPath.1.0.hdalc (31.5 KB)

Best,
Sebi
User Avatar
Member
453 posts
Joined: Feb. 2013
Offline


This is a basic tool to quickly add visualizers based on a library of easily editable and expandable presets. The idea is that you make the HDA your own and customize the built-in library to your personal preferences and use-cases.

It's pretty much 100% Python and still a very early version of what it was supposed to be. But I think there are several interesting things to learn from this.
Edited by DASD - Nov. 28, 2022 21:34:47

Attachments:
SmartVisualizer.hdalc (61.1 KB)
SmartVisualizer.hiplc (380.4 KB)
Smart_Visualizer_Screen.png (1.3 MB)

User Avatar
Member
81 posts
Joined: Oct. 2021
Offline


Hi ! I'm Tom and my Tool is the Quick Wedger.

It allows you to create a wedging system in just a few clicks. I think TOPs is quite hard to get into, so I decided to try and learn some of it and make it easier for newbies to set up a wedging system without having to dive into TOPs and set it all up by themselves.

The tool allows you to pick parameters you want to wedge then creates a mosaic with the results, caches it all to disk and creates a file node so you can quickly preview your sims in the viewport as well.

Here's a link to the video explaining how it all works : https://vimeo.com/776125565 [vimeo.com]

I have some ideas for improvements but fairly pleased with what I managed to create in just a couple of days.

Big shoutout to Matt Estela : his CGwiki really helped get this thing off the ground !

Congratulations to everyone else, I see a lot of cool stuff !

Cheers

WaffleBoyTom

(edit november 29 20:19 CET : uploaded reworked HDA and preview image along with new reworked video)
(edit november 30 15:05 CET :Last Edit, sorry, reworked video because of bad audio, fixed a display issue with the HDA so reuploaded new hda and new .hip)
Edited by WaffleBoyTom68 - Nov. 30, 2022 09:07:23

Attachments:
quick_wedger_prev01.png (87.0 KB)
wbt_quick_wedger.hdalc (87.5 KB)
wedger_showcase_embedded.hiplc (861.1 KB)

User Avatar
Member
3 posts
Joined: Jan. 2019
Offline


Here's a tool that aligns and when needed creates triangles to 'stitch' together two or more mesh panels.
I'm mainly using it on marvelous designer assets flat auto-retoplogized and reshaped back through uv domain,
a process which creates mesh panels with misaligned and often different amount of vertices that would be
effort to fix by hand. none of this creates perfect geometry, but it together with the stitch tool
creates very quick geometry.

It's a tool that could be useful for anyone working with assets broken up into separate panels of differing
resolutions, especially anything flat-retopologized as is typically done with marvelous designer assets.

Note: it does attempt to fix uv distortion (which happens when moving points) but i haven't found a way to do it perfectly.


Image Not Found

Attachments:
polystitch_screenshot.jpg (687.8 KB)
polystitch_scene.hipnc (883.7 KB)
sop_Seethe.Versalight.dev.PolyStitch.1.0.hdanc (32.7 KB)

User Avatar
Member
1 posts
Joined: Feb. 2017
Offline
Megascans Browser is a tool to quickly load assets downloaded with Quixel Bridge into Houdini.
There are two, the Megascans Material Operator that loads materials and the Megascans Mesh that loads meshes.

Attachments:
megascans_browser.zip (14.2 MB)

User Avatar
Member
110 posts
Joined: Aug. 2016
Offline
Hello all,

Here's my submission.

PHAI - Polyhaven Asset Importer.

With a few clicks this tool sets up and assigns texture material to the incoming FBX model to be rendered in Karma XPU.

I made this to make life easier when setting up a look dev scene instead of spending valuable time in material setup and assigning them.


I have also created detailed help file with the tool, Please have a look. If you are in any doubt you can refer to that.

The demostration video will go through 10 examples which are the most likely scenarios using this tool.





Please install the HDA and then go through the 10 example files to get familiar with the asset.

(Files too big to attach here)
Example files link: Example files [bit.ly]

Hope you enjoy the asset and it is helpful to you.

Al the very best.
Edited by ResilientPictureCompany - Nov. 30, 2022 03:09:28

Attachments:
Render1.jpg (252.4 KB)
RPC.PHAI.1.0.hdalc (465.0 KB)
Render2.jpg (268.9 KB)

User Avatar
Member
22 posts
Joined: Jan. 2019
Online
My submission: Loop Utility

A UI tool to make parameter variations inside loops fast, easy to use and free of the need for writing code.
This includes random variation, iteration based variations, custom lists, and attribute based variation.

To learn how it works here an in depth tutorial:


Here a quick demo of how I like to use the Loop Utility to create fast asset variations:


Or check out the attached example file.

One note:
This should not be seen as a replacement for TOPs. TOPs is way more powerful and versatile in a lot of applications. That being said there are times where you don't want the extra steps of caching out geometry, you're not doing complex steps like simulations, you want instant feedback and an easy setup, or you are using your loop as part of an animation where tops doesn't cut it - that's where the loop utility shines!
Edited by HandcraftedMedia - Dec. 1, 2022 13:11:03

Attachments:
LoopUtility-CoverArt-00.png (3.3 MB)
TechArtChallenge2022_LoopUtility_00.hiplc (1.5 MB)
sop_dom.LoopUtility.2.2.hdalc (39.3 KB)

User Avatar
Member
5 posts
Joined: May 2019
Offline
Hi all!

Here is my entry!


HOUDINI PACKAGE DOWNLOAD (Contains HDA, Test Files and Python Scripts) [drive.google.com]

This package is a little too big to be attached.

WPN GENERATOR

What does this do?
It allows you to quickly generate VDB meshes using modeling Profiles drawn in Photoshop! (Works with any program as long as the output contains PSD layers and groups!)

Why?
It's meant to replace the traditional base-mesh modeling/sculpting part of the process with this toolset that only requires drawing on 2d planes and some parm tweaking; As a result, this allows for much faster iteration than the traditional modeling process!

Background:
Years ago, I was heavily inspired by the GDC talk given on the Labs Trace PSD tool and created my first tool using that as a base! (It was just a simple sword-sketching tool)

And over the years it continued developing into a toolset!

Eventually, it required its own implementation of Raster-To-Vector Tracing using PoTracer due to the Labs Trace PSD tool being a bit too slow whilst processing 20-30 layers.

Why Zip?
It's a little bit different (in a zip archive) as it's an entire Houdini package, having it be a package allows easier installation and removal of the package.

It will also automatically append the VENV that contains third-party libraries like PoTracer and PSD tool to Path on startup through pythonrc.py

Labs tools used in this:
  • Delete Small parts
  • Straight Skeleton 3D used in ShapeCarver

Installation:

As a result of being a package, it will need to be installed using the provided installer! (Credits to Christian Akesson for showing this on his LearnCreateGame channel!)

  1. Download WPN_GENERATOR_PACKAGE_SUBMISSION.zip and Unzip it into a folder of your choice!

    You should see the following structure:



  2. In Houdini > File > Import > Houdini Digital Asset:



  3. In that window, select Installer.hda and click "Install and Create"!


  4. Success!


    It will generate a JSON in your {HOUDINI_USER_PREF}/packages folder that allows Houdini to treat this folder as a package!



Uninstallation:
Perform the same steps as above but with the Uninstaller.hda!

To Test:
Feel free to open up any of these HIP Files after installing the package!


Attached are several renders of the test files!






Cheers!

P.S.: If you're interested in helping out to expand this project and/or creating your own Generator, feel free to do so! [github.com]

Edit: Image attached was broken, so reattached!
Edited by tov95 - Nov. 30, 2022 21:17:28

Attachments:
AK.png (371.8 KB)
AK_modify.png (305.1 KB)
BattleRifleV04.png (309.3 KB)
FutureCarbine.png (433.7 KB)

User Avatar
Member
899 posts
Joined: Feb. 2016
Offline
FAST SCATTER Sop is an efficient random point generator with improved workflows for art-directiing the generation and distribution of random points.

Some key differences from the traditional Scatter node:
  • Promiscuous Relaxation: points from different objects can interact and influence each other during the relaxation
  • Clumping: instead of relaxing, points can clump together
  • Organic effects: with the alternation of clumping and relaxation in the feedback
  • Accepts new input attributes for new results during the relaxation. Example: points with high "weightScale" attribute value will push away the neighbors with a low weightScale value.
  • Optional Free Roaming: during the relaxation points are no more restricted by the source geometry boundaries.
  • Points Pass-through mode: accepts already existing point clouds to be sent to the relaxation feedback
  • Can scatter from pieces and the generated points keep the id of the source geometry

    Custom specialized HDAs created for Fast Scatter:
  • Scatter Class Setup Sop: external tool (available to the user), helper node configurator for the geometry pieces to use for scattering
  • Attribute Step Sop: internal tool, quantize the attribute values and assigns a step id to points
  • Gonzo Random Point Sort Sop: internal tool, a cheap point order randomizer, with different levels for the quality of the randomization
  • Fast Random Sort Sop: internal tool, broken/under-development, failed attempt at using basic cards-shuffling techniques to make a fast point order randomizer.
  • Randomness Visualization Sop: internal tool, visualize the quality of the randomness of the values of an attribute.
  • Relax-Clump iterator: internal, (not a hda yet), a basic relaxation algo.
  • Fast Copy-All-Attribs-from-ID: internal, (not a hda yet), a dynamic vex code generator that writes the point() function calls on the fly for a Vex Wrangle to execute. Made as an alternative to Attrib Copy Sop. Still not sure if it's faster.


Edited by Andr - Dec. 1, 2022 23:57:43

Attachments:
fast_scatter_spaghettification_effect.jpg (576.3 KB)
FastScatter_example.gif (785.0 KB)
Fast_Scatter_1.0_HDA_and_Examples.rar (277.5 KB)

User Avatar
Member
37 posts
Joined: March 2019
Offline
Attach to Curve

Scope:
add (and remove) points to curves directly in the viewport.
attach them to the curves so modifications to them also move the points.
be able to modify the points after they have been placed / adjusted by the underlying curve.
create and inherit Normal / Up vector along input curves for placement of objects.

Features:
Screenspace Distance based selection
3D snapping
works with split views and multiple panes
Different drawables for placed points based on percentage or distance
Adjusts both relative and distance value when point gets added
Allows selection of added points / moving them along the curve
Allows changing of relative / distance method after points have been placed
Points inherit normal along curve direction and local up vector

See the WIP thread for in case we're able to update those post-deadline if we continue working on these HDAs.
https://www.sidefx.com/forum/topic/87519/ [www.sidefx.com]
Edited by sebastianknoll - Dec. 1, 2022 00:00:42

Attachments:
sop_knolls.attach_to_curve.1.0.hdanc (103.4 KB)
attach_to_curve_examples_01.hipnc (800.0 KB)

User Avatar
Member
62 posts
Joined: Sept. 2014
Offline
SCD Edge Loops

Here’s the SCD Edge Loops tool, which allows you to create multiple edge loops from a single node, with easy creation of symmetric loops. This greatly simplifies an important modeling task, and I’m hoping it can serve as inspiration for more modeling enhancements in Houdini.

NOTE: Houdini 19.5.443 or later is required to use the asset.

To use the tool, select one or more edges to split, and add the node to your network. By default, one new edge loop is created for each selected edge, splitting edges at their midpoints. Change the Offset parameter to create two parallel edge loops, offset from the midpoints. Use the Relative checkbox to specify Offset as a percentage of edge length instead of an absolute distance. Use Divisions to create additional parallel edge loops when Offset is nonzero.

Edited by tshead - Dec. 1, 2022 01:54:04

Attachments:
Screen Shot 2022-11-30 at 9.47.07 PM.png (3.4 MB)
edgeloops-demo.hiplc (227.1 KB)
scd.edgeloops.hdalc (34.0 KB)

User Avatar
Member
3 posts
Joined: Nov. 2022
Offline
Scatter Without Overlap Tool


Hey, here is my entry for the Tech Art Challenge, a tool to scatter thin shapes very close to another without overlap.
It can be used to scatter buildings or other non organic shapes onto any surfaces and create interesting scatter patterns!





I hope you will like it ✨
Edited by pakreht - Dec. 2, 2022 03:59:47

Attachments:
scatter_without_overlap.hiplc (639.2 KB)
sop_pakreht.scatter_without_overlap.1.0.hdalc (58.3 KB)
Preview.png (1.1 MB)

User Avatar
Member
34 posts
Joined: Sept. 2017
Offline


"Curve Wobble" is a helpful tool for quickly setting a vel field to be used in a solver or on its own to animate curves in a natural way. Using push allows you to deform a curve in a more predictable way by pushing it in an up direction that can also be controlled with a noise. The velocity is calculated for each line according to connectivity. The curve can also be bent along and an axis and toward target points for easy control.


The two HDAs are intended to be used together but the "vel from curve" is already implemented in Houdini.
Edited by bajanflyingfish - Dec. 1, 2022 22:02:05

Attachments:
sop_willi.Curve_Wobble.1.5.hdalc (50.7 KB)
prjemg.jpg (759.6 KB)

  • Quick Links