VEX in Houdini: Movie Color Visualisation

comments 9
Free Tutorials

Quite some time ago I was trying to cook up something like the guys at Some setups that’d deconstruct a given movie into its individual colors in a visually pleasing manner. Recently I thought it was time to try another attempt. Instead of linearly mapping the individual frames’ colors on a 2D plane, this time I wanted to create something that took advantage of 3D space.

Download Project File (.zip)

The Idea here is to first read in individual movie frames and then convert the individual pixel’s RGB values into HSV color space and use the hue (converted to Radians) to map the individual pixels in a radial shape with saturation and value driving how far a given pixel can be from the center line of the timeline we’re building. In addition to that I found it quite interesting to get my hands dirty when working with strings in VEX to extract file paths for a movie’s individual frames. Hope you’re having fun with this one!

Schematic Overview of the Setup

Liked it? Take a second to support Moritz on Patreon!
Become a patron at Patreon!


  1. WE ARE NOT WORTHY. Excellent tut, can’t wait to fiddle with this!

  2. John Glam

    do you guys ever come up with your own ideas or do you just copy other peoples work?

    • Hi John, what do you mean? We are not a graphic studio but a tutorial site. Our unique contribution is to create learning material and to show how CG-techniques work. Think about it this way: If your professor explains calculus to you in school, is this not worthwhile because he did not invent calculus?

  3. What about the copy SOP giving an attribute to each “plane”, so you don’t need to calculate the plane you want to work on? (ATTRIBUTE copynum)

    and in pointwrangle1 you would have something like:

    filename= path+pathsep+file+num+suffix;

    and you have an animated pointcloud showing your “movie”

    • Can you add the attribute copynum in the Copy and Transform sop or does it require a different sop.

  4. The “copynum” attribute is in the copy SOP, just activate it…

  5. jim bachalo

    Thanks once more for sharing your insights and knowledge! Your tutorials more inspiring (unfortunately) than most that I’ve paid for.

  6. Andy Hopper

    Amazing thankyou. Have you though how you could do this with audio?

Leave a Reply