Jeremy’s Subterranean Contour project from Urban Intervention. 4th year design paper run at the Auckland University School of Architecture by Daniel Marshall and myself. derail.co.nz/urbanintervention
Decortica: Mathew Bosher, Daniel Bosher & Antoinette Lee – decortica.com Video Director: James Turnbull – gekkoimagery.co.nz Programmer: Nick Sayes (nicksayes.com) & Jordon Saunders
The “point cloud” effect used in Decortica’s Featherlight music video was generated by running video frames through a Processing script. Processing is an open source lightweight programming language and environment geared towards creatives and researchers to generate various data visualisations. Processing provides simple means of accessing and interpreting: images, video, sound, web data etc. It is a particularly simple programming tool for those who want to give it a go.
The Featherlight script resolves 2D images into a array of pixels (point cloud) which it colours and positions in 3D space. Brighter pixels are positioned at a depth and darker pixels closer to the viewing plane or front of the point cloud. From front on, the point cloud appears a close representation of the input image with some interesting distortions. These distortions are a result of visual perspective. The bright points, most distant from the viewer, appear inset from the bounds of the video frame and behind the darker pixels which then appear to be stepping out from the frame. A best example of this effect is between 2.00 and 2.30 in the video. This portion’s explosive backgrounds force the script to drop the bulk of the point cloud away from the viewer and behind the silhouettes of the band. Variations in the brightness of the explosions cause the points to move forward and back, warping the frame edge.
At other points in the video, such as between 1.00 and 1.20, the point cloud orbits. Here you can see the variation in point depth most clearly. The brightness of Matt’s face appears to be pull off its background.
I have simplified the and annotated the script so that it is clear what each part is doing. Most of the programming occurs within the draw() function. I have highlighted three key parts.
Part 01 imports the specified image and interprets into pixel by pixel data.
Part 02 goes through the pixel data to determine its colour and brightness.
Part 03 draws each pixel as a point in 3D space. The brightness defines the depth of the point.
More info, summary, images, outakes posted on decortica.com
Dan gave me a Processing script to play with for a quick Decortica video. Its a bit house of cards like, but works on quite a different principle … we don’t have 3D video cameras. Was also playing with a variation on it that starts to respond to sound etc. Its was too weird for an MTV or C4 music video. It may see light in the future as another Decortica vid or other …
The screenshots above are the script run over the Coldplay iPod Advert. It looks way cooler in motion.