Thursday, April 26, 2007

Lovebytes 2007 generative ident

Over at Universal Everything, Matt just published the furry fruits of our most recent combined efforts, an identity generator for this year's edition of the Lovebytes digital arts festival, suitably themed: Process.

Ms. CaaciwaSenor VivagisuMr. Mic

The theme couldn't have been more fitting this time, since even though the project had to be turned over quite quickly, it yet again involved an interesting process and journey till the final execution (Not even mentioning Processing as tool used ;). Initially inspired by some of my old experiments with hairy aesthetics and driven by the idea of generating a large(ish) population of (at least 20,000) unique, cuddly, cute monsters, we started thinking how to best allow enough variations to emerge and ensure every generated monster "feels" like an individual...

We looked at some "classic" examples by Jared Tarbell using a templated approach and also some of the more interesting recent spin-off's dealing with online identity inspired by this and another of Jared's experiments...

Hairy potatoMonster processMonster process

Yet, being someone who prefers using code (over predefined assets) for as many parts of a project as possible, I started with my usual approach of isolating and defining a set of suitable design parameters and then went on choosing value ranges for each: head shape (radius, subdivisions, curvaceousness), eyes (count, shape, pupils, direction), colour ways (head vs. hair), hair properties (position, spread, density, curl, gravity, gradient etc.)... Not all of the parameters listed in the sketch were actually used in the end, because most of them are interdependent in some form and having too few or too many such parameters would possibly limit the number of possible outcomes or alternatively explode that "search space" beyond your control and you'll end up spending most of your time literally searching for an optimal "region of interest" in which your chosen parameters work nicely together and complement each other. That case is then pretty much the inversion of the Pareto principle if you spend 80% of your time getting 20% right...

In any way, I like thinking about design as this space of opportunities and this parametric approach allows me to separate the design process from the design model. It also allows me to test parameter combinations at their extreme values and so narrow down the "search space" of possible design outcomes created by these parameters and align it with my expectations. The approach is based on defining designs as choices and can be far more powerful and flexible when it comes to art direction requests and/or automation. In many cases it helped me avoiding to change any real code last minute and so possibly introduce new bugs.

Since we wanted to create true characters we needed to define and assign another important parameter to each monster: Names. Each name is generated using a few very basic rules, sometimes resulting in hilarious outcomes and unexpectedly suitable names...

Our basic rule of naming is consonant-vowel-consonant, plus a few more extra rules as filters applied on top, e.g.:

* Not every letter (but both vowels and consonants) can be doubled up
* There's usage limit of every letter per name
* Monsters do have gender. Female names end with "a" or "i", males are ignorant about that aspect...
* Letter "q" is always followed by "u"
* Names vary in length between 3 and 11 chars
* etc.

In hindsight, some of these rules definitely seem to be enforcing (unintentionally) a White-European naming convention... No offence, please! (Here am too wondering if spammers are using similar non-list based name generators for their products. Well, do you?!)

Last but not least, there're currently 20,000 postcards circulating around the globe and I'd absolutely appreciate if proud owners of these cards could contribute pictures of them to this specially created flickr group... Thank you kindly!

Friday, April 20, 2007

KEF Muon launch

UPDATE: A short documentation video of the launch event and installation is now available on the Moving Brands website.

Just returned from Milan yesterday where I have spent the last few days as part of the Moving Brands team creating an audio-responsive installation for the launch of the most amazing (and tallest) speakers I've ever seen. Engineered by the high-end audio manufacturer KEF and designed by legendary Ross Lovegrove, these speakers really are quite a sound and sight to behold.

Kef Muon @ Sala del cenacolo, MilanoKef Muon @ Sala del cenacolo, MilanoKef Muon @ Sala del cenacolo, Milano

The incredible Sala del Cenacolo hall at the Milan Science Museum had been chosen as space for the launch event and provided the perfect contrasting backdrop to the minimal design of the speakers and installation.

Sala del Cenacolo, Milano

Our installation is using a gigantic LED screen (built by Creative Technology) of 5 x 10 meters to visualize the music played through the speakers in realtime. We decided on the concept of fluid forms flowing/emanating from the positions of the speakers as well as complimenting the Muon design language. The software was developed in Processing by Chris O'Shea under my supervision and creative direction by David Eveleigh-Evans.

More images on Flickr: Toxi, Chris & David

Meirion Pritchard of Wallpaper Magazine has posted a short (overexposed) video on YouTube:

Saturday, April 14, 2007

Breaking the silence: Audi TT, New Shoots and more

It's almost impossible to believe the Easter holidays are already over and this past week were my first few days "offline" this year: from work and literally. Ok, I had a few seconds of (mobile) online experience here & there, it's hard to let go...

The ironic thing is my version of 2007 started at such full speed that I've been finding myself in a situation where for the past year at work I've been advocating a more open (as in sharing experiences) creative development process which, where possible, would provide some more insight and behind-the-scenes type info about our process and general approach. And whilst things really started actively getting ready & moving into this "new" direction at work, personally I seem to be increasingly heading, unwillingly, in the opposite direction. I find this extremely unsettling and unfulfilling.

So here're some attempts to remedy this situation and at least document some of the things I've completed recently and others which are still in the pipe. In chronological order:

Audi TT Movement for Universal Everything


Recently I completed my first collaboration with Matt Pyke, a 50 second viral ad for the launch of the new Audi TT (and a related art prize) in Australia. The project was commissioned by The One Centre in Sydney and the clip has been making the rounds around the blogosphere for past couple of months.

The first time I met Matt was in September 2005 when we were both involved with some Nokia project. We never really stayed in touch though until last summer when he proposed a collaborative audiovisual DVD project with about 15 other people around the globe involved. Check the website for updates soon.

Last December he sent me a storyboard for an ad he was working on. An absolutely beautiful, simple, amazing idea: streamlines slowly revealing the shape of a car, shaded & rendered in the style of scientific imaging applications. He also asked if I think it'd be doable (apparently a few 3D studios turned the idea down). I said yes straight away, then only knowing this was right and doable in principle. It was the perfect brief for a computational approach and I immediately decided employing Processing to create the design and video. It's great to see people like Matt, who are not involved in the computational/generative design community, being able to gauge and use Code as abstract concept in the creative direction stage of a project, being able to understand its potential as creative tool and then develop ideas around it. This has not strictly to do with Processing alone, yet I believe Processing has been providing and becoming an ever more popular cultural touchpoint for "external" people to start considering Code in such a way. This is all good!

The video below is a brief 2 minute journey through the development process and the different stages of the project, each with brief commentary/subtitles. Enjoy!

"New Shoots" intro sequence for This Is Real Art

ns20070410-0079ns20070410-0121New shoots, frame 191

New Shoots is a new Sunday morning series (8:20am) on Channel4 showing films by disabled directors. After seeing some of my grown type experiments on flickr, This Is Real Art commissioned me to create a short animation using the same technique for the title sequence of this series.

Here's how it looks moving:

Here's is how it works: The type is actually made up of tiny little 3D particles/spheres which attach themselves one-by-one to the (invisible) outline of the logo and to already existing particles. The process is making use of Diffusion Limited Aggregation (DLA short) and because of its nature is extremely slow and CPU intensive. At the final frame of the animation the particle count stands at 4.36 million or roughly 50MB of pure 3D data per frame. Once the growth process is completed in Processing, the frames have to be rendered in Sunflow making use of this renderers amazing lighting and shading quality... I've started working on this app over Christmas and now have extended the system to be able to adjust various parameters influencing the characteristics and order of the growth process, e.g. being able to modulate the density, spawn/escape radius, particle stickiness, outline alignment factor etc. I find it incredibly interesting how even a small number of parameters opens up these huge spaces of opportunities and variations... I won't be opening up old wounds again at this occasion, but to me it's projects like Audi or this one which truly hammer home the importance of good, reusable OOP'ed code to let you more focus on your ideas, make these journeys possible (in time) and all the more enjoyable. Enough said! Almost.

ToxicLibs @ GoogleCode

Second last thing for today, and directly related to the previous sentence. I've started putting up some of my Processing/Java tidbits to GoogleCode (it was simply easier/faster to setup than This is not a collection of libraries, but a slowly growing SVN repository of classes I've written over the past year or so and been finding myself re-using a lot. A couple of them are still quite buggy too, unfortunately.

So please consider this more of a heads up rather than an official launch. Some of the stuff is not usable from within the default Processing IDE, some classes rely on the "new" Java5 syntax features, but still might be helpful to somebody (e.g. Eclipse users). Included in this loose collection are general purpose classes like: Have a browse through and let me know any probs via the issue tracker...

Last but not least then, the interactive table for London College of Fashion I've worked on last year at Moving Brands has been nominated in 2 categories for this year's D&AD awards. Oh, fingers crossed, please, please!