For whatever reason I decided to create procedural subdivision surface effect in pure VEX. Probably quite useless, but It was a good exercise in how to generate and manipulate geometry in VEX.
Usually you run vex over points or primitives, but because I needed to actually generate new points and primitives (in subdivision step), I had to run VEX in Detail mode – run once and process geometry manually. It was also a bit tricky due to how houdini handles edges (half-edges).
Code is split into two wrangle nodes – one does subdivides the geometry and other does the smoothing. Everything is in a recursive loop. I split it up like this so it would be easier to insert some other deformations/magic between subdivision levels.