Valentine’s Day renderings – programming shadows in ActionScript 3

Sunday, February 15th, 2009

I’ve been putting some thought lately into the best way to render shadows in AS3. The built-in DropShadowFilter is perfect for most situations – particularly headlines and simple movie clips – but it lacked perspective control, at least for what I was envisioning…

arcstonevalentine.jpg

(more…)

I Heart Processing …

Sunday, November 30th, 2008

A little under a year ago I was ‘oohing and ahhing’ over the official launch of Adobe AIR, and the amazing potential it opened up for blurring the lines between web and desktop applications. Lately – well, since Flashbelt 2008, I’ve been ‘oohing and ahhing’ over Processing

I Heart Processing - rendering by Nik Rowell
(I’m honored that this piece was used in a Create Digital Motion article announcing Processing’s move from Beta to the official Processing 1.0!)

Adobe AIR and Processing?! Apples and oranges, I know. But I tend to obsess over things – whether it’s indenting my CSS properties, dropping my curly brackets to the next line, or exploring new software and languages to experiment with – like ActionScript 3, Processing, or NodeBox.

I think Processing has become more than just a fling…

Nick Longtin, colleague and teacher of many of my programming skills, once commented that Processing was right up my alley – and he was right. The creative potential has me quite addicted, and I think Processing has become more than just a fling. An area where my eye for design and my obsessive coding habits play nicely together. An area where stunning and inspiring work is easy to find. Where late nights of coding are rewarded with visual output, not some big query result to loop through…

Yeah, I Heart Processing.

Many of my experiments have been posted to my Flickr photostream – check ‘em out and let me know what you think!

Enough with single Particles, try an entire Particle System

Friday, November 14th, 2008

More experiments with Processing and Particles. This one uses the wonderful Traer Physics library.

Rather than writing a custom Particle class and applying forces to them individually (as in my previous particle post), all I need to do is create a ParticleSystem instance, add forces as desired (none in this case), and Traer does the rest.

In this example, I continuously add particles in the center with random velocities, and continuously remove them when they’ve grown old. The particle.age() property also controls the size and transparency of each particle, which is simply an ellipse with a teal-ish fill. The moon is a PNG placed in the center. For a final touch, I use the built-in camera() function to zoom in an out, controlled by a Sine wave.

1,000 Particles in Action. Part 2.

Sunday, November 9th, 2008

Actually, this one uses 10,000 particles, and the equation:

float force = planet.mass * particle.mass / distanceSquared;

(Thanks Keith Peters!)

Particles are regenerated if they begin shooting off into space. Near the end of the animation, I decrease the center planet’s mass until it becomes negative, changing gravity into repulsion…

1,000 Particles in Action!

Tuesday, October 28th, 2008

100% code animation built with Processing – uses a random color sampled from a photo of rust, 1000 particles and Perlin noise to control movement.
This experiment was based on my ActionScript 3.0 PerlinCurtain post.

Make Some Perlin Noise! … a Flashbelt Follow-up

Sunday, June 15th, 2008

I had the opportunity to attend Flashbelt again this year. And it was awesome.

perlin_snapshot.jpg

This year’s highlight was seeing Jared Tarbell speak again, who’s done amazing work in both Processing and Flash, and is a the co-founder of Etsy, an excellent marketplace for all things handmade! For those who have kids, or like wearing really small clothing, be sure to check out Orange Rhino for some sweet threads from our very own Jess Louwagie.

Jared’s session once again left me speechless. The work was refined and elegant, the music fitting, and the presentation seamless. What inspired me the most of about these speakers, however, was not just their work. It was how approachable they all were. And how apparent it was that their work was fueled by curiosity; a willingness to make mistakes and a stubbornness not to give up.

One of Jared’s pieces that caught my eye was a series renderings that used Perlin Noise to generate forms resembling an iris (of the eye, not the flower).

While analyzing some of his source code (special thanks to Jared for providing it), and listening to Eric Jordan’s mix, Indigo, it became apparent to me the potential of using BitmapData.perlinNoise() and BitmapData.getPixel() to achieve organic, pseudo-random results.

Read on to see my latest experiments – Click the images to see the full-version. They look better :)(more…)

Processing + Flashbelt

Monday, June 9th, 2008

One of the key speakers this year at Flashbelt is Processing superstar Robert Hodgin. Processing is an open source programming language and integrated development environment (IDE) that aims to serve as a ‘digital sketchbook’ – used by artists and programmers to create complex visuals, animations and image manipulations.

Former Flashbelt speaker and colleague Nick Longtin recently suggested I give Processing a try. That it was ‘right up my alley’.

I think he was right. Very similar to ActionScript, but with a simplified syntax. Check it out:

ActionScript
var blur:BlurFilter = new BlurFilter(10, 10, 2);
myLogo.filters = [blur];

Processing
filter(BLUR, 1);
image(myLogo);

…. although, you could simplify the ActionScript to
myLogo.filters = [new BlurFilter()];

Here are some of the results from my first Processing experiment (more examples in the rest of the article):

Processing Flashbelt

More examples: (more…)

Craftsravaganza! Rogue Art/Craft Fair

Monday, April 21st, 2008

If you like art, and you like people, you’ll love Craftstravaganza – a rogue art and craft fair for handmade art. My wife and I attended last year and were really impressed with the talent and variety of artists – some really great stuff. Great gift buying opportunities at affordable prices.

At that time our baby clothing project was still in the design phase, so one of our goals for this year was to apply to become a vendor – and am pleased to announce we were accepted. Vendors are judged and a limited number are accepted so we were very excited. Come and say hi, and support our local artists. In fact, I will even offer $5 off any onesie or t-shirt if you mention this post! Preview our wares, http://orangerhinokids.etsy.com

Craftstravaganza

Craftstravaganza takes place this weekend, complete information on the website: http://www.craftstravaganza.com/2008/home.html

++++++++++++++++++++++++++++++++++++
Saturday April 26th, 9am – 6pm
Minnesota State Fairgrounds
- Fine Arts Building
Complete directions here

Our booth will be directly across from the band (yes there is music too!), our business name is Orange Rhino
++++++++++++++++++++++++++++++++++++

Papervision3D DOES NOT meet SoundData, unfortunately

Thursday, April 17th, 2008

I had every intention of using my recently released SoundData class in an experiment with Papervision3D. I got pretty far: Picked out a good Armin Van Buuren track, had an interesting animation started; just hadn’t added the code to respond to the sound spectrum.

Unfortunately, once I loose a little momentum on one of these side projects, the likelihood of a bigger, better experiment stealing it’s lunch money gets pretty high. I grew rather attached to this latest experiment and, despite it’s somewhat ‘incompleteness’, I wanted to share it anyways.

Special thanks to Seb Lee-Delisle for the inspiration and all his particle work on Papervision3D!

Here’s the experiment. Enjoy! (there are several colors and speeds… so if you don’t like what you get on the first pass… refresh the page ;)

3D particles sans-sound

Fields of Purple – experiments with Papervision3D

Saturday, March 29th, 2008

I realize it’s been a while since my last flash experiment covering Audio Visualization with ActionScript… but fear not – I haven’t been taking a break. Very much the contrary :)

(more…)