Tag:
Horror Vacui layout - Packing 1b+3b [lo]

Layout with Packing 1b + 3b for Portuguese magazine EASI.

Horror Vacui: Fear of void, fear of empty space. How many angels can dance on the head of a pin? Is there really emptiness between the atoms? It is hard to imagine. Who can take comfort in the uncertain world of quantum mechanics? Better to consider strategies for filling vacuum, covering the blank surface with form and structure, and thus conquering it. It might seem extreme. Claustrophobic, even. But there is safety in numbers.

Two-page layout for EASI, a magazine from Porto, Portugal. See the image in high res to see the smaller details.

I’m still not quite done with the Packing series, even though packing algorithms have become a bit of a generative clichee recently. It becomes an issue of whether you’re able to give the image qualities beyond the default result of the algorithm. For now, I still believe that my take on it succeeds in doing so.

No Comments »

Illuminations 1.1 is a new version of the Illuminations piece I created for the AV.06 festival in Newcastle. It has only been shown once, and so it seemed like a good starting point when Jan Rohlf from Club Transmediale asked me to do the graphics for the festival’s printed materials.

First I tweaked the system, changing the color scheme and modifying parameter presets. Then I used Processing’s PDF output to generate one hundred vector originals for free use by the festival designers (Tine Gundelach & Chrish Klose). Daniel Shiffman’s Moviemaker library was used to generate prerendered videos for use on monitors.

Finally the system was updated for realtime projection using a dual-screen setup (2048×768 resolution, OpenGL). The projection setup at Maria am Ostbahnhof is impressive, featuring 12 projectors covering the entire main hall. The piece was shown running for two nights, except when the performing acts had their own video.

See more documentation on Unlekker (including animation) and Flickr.






1 Comment »

Creating PDFs in Processing and post-processing them in Adobe Illustrator, I frequently find myself wanting to do things like adjust global transparency levels, colors etc. So far that’s been frustrated by the rather poor color adjustment options built into Illustrator, but today I finally got impatient enough to look into a scripting solution.

Illustrator has had Javascript support since CS 1, exposing the document object model to anyone with a bit of scripting savvy. Adobe is good about publishing technical documents, perhaps a holdover from the days when they relied on PostScript to build their empire. So anyone can go to the online scripting documentation and download a complete PDF with a description of the Illustrator API.

As might be expected, coding Javascript is not without its troubles, and I found myself having dotcom flashbacks to the days when I would do client-side scripting. In particular, debugging is always been a pain with Javascript, especially when one is not intimate with the DOM and API. Fortunately, the ExtendScript Toolkit provided by Adobe functions both as a IDE and a debugger. Still, I find myself wanting a few nice details, like the possibility of displaying a progress bar when a script is executing.

To give you an idea of the oddities of coding for Illustrator, I am posting a script that allows the user to input a multiplier, which is then used to adjust the opacity of all path items in the active document. This covers for the lack of such a function in Illustrator proper. To be honest I was surprised at the speed with which I was able to accomplish my goal. I would seriously consider this as a way to do brute-force post-processing of vector files.

That said, I doubt it will ever be as fun and quirky as Scriptographer

Source code – OpacityAdj.js

Read the rest of this entry »

1 Comment »

Demo of high-res tiled image output: KugelTiled04 res demo

Update: I’ve finally found the time to write a proper class for this tiling technique. Have a look at aTileSaver.pde.

I’ve been able to generate huge raster files for print use from Processing, using the tiling trick first outlined on the Processing forums by user “surelyyoujest”. Using his code as a base, I got it working with OpenGL and proceeded to output some gigantic files. A quick hack using PImage allowed me to stitch the resulting tiles together in one huge image, which was then saved as a Targa file.

See the picture above for a demo. When viewed at its original size, the left half of this image shows the full picture at 10% (original res 10240 x 7680 px). The right half shows the whited-out section of the left image at 100%. The resolution is staggering.

This should clear the way for doing huge prints, without not having to worry about PDFs not showing 3D correctly (see previous post). I will post sample code for tile-based rendering and stitching as a library when I have time.

7 Comments »

I just posted an entry about NodeBox over on Generator.x. NodeBox is a Python-based coding environment that specializes in producing vector graphics, with very high quality results. Like Processing’s use of Java, NodeBox uses a simplified syntax but has access to the full power of Python for advanced programmers. It also has some interesting libraries, like the Pixie handwriting library or the PhotoBot image processing library.

Unfortunately, NodeBox is only for Mac OS, but the source is available under a MIT license. It looks like a fun alternative to Processing with a slightly different bias on what kind of work it is useful for. Have a look at the Gallery for some examples.

No Comments »

060522_pdf_niaf_postcards.jpg

More PDF output examples: Graphics for NIAF

More gratuitous (real-world) examples of how great PDF output is. These are teaser postcards for Norwich International Animation Festival, which will take place in October this year. I am doing a generative piece which will function as identity graphics for the festival. Essentially, a single Processing software will generate a large variety of stills for print use (using PDF), as well as realtime animated trailers to be run ahead of every screening.

See Flickr for my sketches for the NIAF piece, the image over shows the 4 postcards that will go out in the next few weeks. Posters and a catalogue will follow, which I am very excited about. Again, the images show that the new PDF output library gives very high quality for print when using 3D objects.

However, there are a few quirks to PDF:

  • No depth-sorting or intersecting objects. In the NIAF project that proved to be a benefit rather than a setback, as the shapes would sometimes intersect in a visually unattractive way.
  • No pro-vertex shading, i.e. no gradient-filled polygons. In the NIAF piece you can see that I have used multiple polygons with interpolated color. This is not ideal, as it produces banding, but it can be worked into the aesthetic of the piece.
  • No possibilities for using groups or layers, a typical feature of PDF and Illustrator documents. If this could be added it would make it much easier to post-edit the results. Processing uses the free iText PDF library, and I experimented briefly with inserting layers by directly accessing the PDFWriter object, but no luck so far.

Still, PDF output is a god-send for a range of new Processing applications.

No Comments »

Complex 3D output using PDF in Processing

Complex 3D output using PDF in Processing.

Sample code for PDF output of complex geometries from Processing, with a 3D shape using lines and polygons being written correctly to PDF. Uses beginRaw() / endRaw() and should probably be used with revision 0115 or later due to recent bug fixes.

Source code – pdf_complex.pde

Read the rest of this entry »

7 Comments »

Real test of complex polygon models with PDF output from Processing, rasterized and monotoned in Photoshop. Some very few 3D rendering artifacts are visible, but considering the complexity of the scene it’s impressive.

hint(ENABLE_DEPTH_SORT) breaks PDF output for me, so haven’t been able to see if that would help with the few incorrectly sorted triangles visible to the right.

No Comments »

The Extend: Advanced Processing Workshop is underway, we are just doing introductions and talking about possible directions.

Here are some links to ways of doing print output from Processing, including PDF, PostScript etc:

See also:

No Comments »