This is a piece created in the last few months being shown at Bumbershoot in Seattle. It involves projection mapping, camera tracking and pseudo-organic growth scripts.
http://grauwald.com/art/crystallinechlorophyll/ Below is a description of how the thing was built, with links to the project files, just in case anyone might stumble upon this and be interested in the technique. Cheers, -Joe Working Files: The working files, digital sketches and conceptural renderings for this piece are being "open-sourced" under a Creative Commons license. Below are links to folders containing all files generated in the production and realisation of this piece. Sketches > http://grauwald.com/art/crystallinechlorophyll/sketches These are the original concept designs. The original object was designed in Blender, it's facets were unfolded using the "unfold" python script. The key to using this script is to break the triangles up in rows and unfold those rows as individual objects. The unfolded meshes are then exported as .svg UV maps. More information on the technique of going from 3D model to papercraft can be found in this tutorial. Production > http://grauwald.com/art/crystallinechlorophyll/production These are the files used for production. Mostly open-source software was used for this piece (albeit running on OS X), however Adobe's Illustrator program was used to convert the .svg files exported from Blender to .pdf files for print. The various facets of the physical sculpture were printed on standard tabloid sized paper (11x17 inches) at a local copy shop. The individual triangles were cut-out by hand with tabs on the edges that were folded under and glued together. Code > http://grauwald.com/art/crystallinechlorophyll/code/ The code is written in Processing and uses the Saito .obj loader library to import the 3D object which was exported from Blender as a .obj file with a .mtl file. Texture maps were also created in Adobe Illustrator and exported in .png format, though other, open-source, programs may have worked just as well (i.e. Inkscape). The software also allows for rotation, scaling and positioning of the object so that it can be aligned to the real world object. This is a bit of an awkward portion of the tool, but essentially holding x y or z on the keyboard while dragging the mouse changes position. Shift+x y or z changes rotation. w d and h keys change scale. In early versions, and then later added back into the most current version, the l key changes the virtual cameras field of view which is very important for matching the real-world video projectors lens properties to the virtual cameras lens properties. Camera tracking is done with a simple difference algorithm. Each channel (RGB) of each pixel of the camera image is tracked for the amonut of change from the previous frame. If the number is above a certain threshold a random number is generated to determine if the associated pixel in the real-time texture map should change. A height map generated in Blender partially determines the probability of a pixel changing from the static "ice-crystal" texture to a "mossy" one. Other influences are neighboring pixels values and the amount of change in the camera pixel. Promotion > http://grauwald.com/art/crystallinechlorophyll/promotion These are promotional materials for the Bumbershoot show. Images > http://grauwald.com/art/crystallinechlorophyll/images/ Images of the process of constructing the piece and other documentation. _______________________________________________ NetBehaviour mailing list [email protected] http://www.netbehaviour.org/mailman/listinfo/netbehaviour
