In 2006, it was tricky to become immersed in video online because it had a difficult time – due to technological limitations – playing smooth without frame dropouts and artifacts. As I work around, I decided to merge the best of After Effects and Flash together to get that immersive experience by writing some code to connect the dots between the two. After an enlightening conversation with Chris Prosser from the After Effects team, I wrote a script for After Effects and a Flash Component called After Effects 2 Flash: Transform Properties. The former exports keyframe data out of After Effects as an XML file and the latter allows the Flash developer to import the XML data into Flash and in order to replicate the Transform Properties in Flash without having to manually recreate all of the keyframes in Flash. When a person experiences the SWF, the XML data is loaded and the motions are precisely synchronized to the keyframe data. On a side note, there’s a clever hack that enables you to export Motion Tracking data as well.
So I received a paypal email notification recently that a gentleman, Alex Tarrant, purchased the plug-in and – to make a long story short – he told me to take a peak at Snoop420 on Tuesday, 4/20.
I love it. I would have never, ever imagined the code could take on a life of its own with a branch ending up as a small contribution to the great execution of code, design and video on Snoop’s site.
The point in all of this is that… once you release your code / plug-ins / applications into the world wild web – whether it’s for a commercial product or, especially if it’s open-source – you lose complete control over how it will be used. As long as it’s unmalicious or does not cause one to be unhappy, when these seeds bloom, they’re beautiful.
The hyper-talented Lee Brimelow and MNR show-n-tell different plug-ins from the present and future of plug-in development for the Creative Suite @ MAX 2009. This is a great video for Flash / Flex developers as well as a primer for designers to see what is possible when you connect-the-dots between code your favorite CS applications.
this tutorial + associated code focuses on finding and getting beautiful color palettes into your openFrameworks application.
the following 411 covers how to export color palettes from adobe illustrator (AI) – found using the kuler extension – and save them in an xml format that is compatible with openFramework’s (OF) ofxXmlSettings addon. to take it a step further, this tutorial integrates the color palettes with memo’s excellent ofxMSAFluid addon.
this tutorial was built on a mac using adobe illustrator cs4, xcode and the fat version of OF v006 with the following addons (ofxTuio, ofxMSAFluid, ofxMSAInteractiveObject, ofxXmlSettings and ofxSimpleGuiToo).
1. ofxMSAFluid for the kuler > AI > OF integration, as i mentioned previously, i’m using memo’s sweet ofxMSAFluid. the first thing you’ll want to do is follow memo’s instructions on downloading the OF addons for ofxMSAFluid here. once you can build and run that project proceed to the next step.
2. kuler + ai magic download and unzip the OF and the AI script from here.
3. after completing steps 1 + 2, watch this video… the script + OF code will make more sense at that point.
To be fair… I wasn’t sure what I was going to do with a series of tutorials I created – some for Adobe – using ExtendScript, SwitchBoard, PatchPanel and Photoshop Panels (aka the CSXSLibrary.swc). A few of these you will find on Adobe’s devnet for Photoshop, but many of which are previously unreleased to the public. I was kicking around the idea of either including them in a book or future workshops – but with Golan’s posting of the videos from Art and Code and the renewed interest, in the spirit of open source, I’m going to post the link to them here, for now, and on Google Code in the new future.
Notes on the tutorials Please note that these tutorials compliment and build off of the excellent documentation and examples already included with these tools. I would recommended starting with Adobe’s documentation first and then proceeding to these tutorials. The order of my tutorials is important as well, starting from simple and building from there. In addition, to minimize your learning curve, I have started with methods in ExtendScript which I build upon and integrate into SwitchBoard, PatchPanel and I believe Photoshop Panels as well. For the seasoned ActionScript developer, I would suggest focusing on the ExtendScript tutorials followed by either SwitchBoard – if you’re interested in building AIR applications that interface with the Creative Suite apps (Photoshop, Illustrator and InDesign) – or PatchPanel – if you’re interested in creating Flash plug-ins for the CS apps mentioned above.
The scripts included in the download, the majority of which come with a pdf tutorial:
ExtendScript - Hello Photoshop
- Add a new Photoshop document
- Get the # of layers in my Illustrator document
- Add/Remove all of the symbols in my Illustrator document
- Remove all the Swatches in my Illustrator document
- How to paint with Symbols in Illustrator
SwitchBoard (SB) - Integrating your ExtendScripts with SB
- Debugging Embedded JS/ES files
- Two-way communication between SB and Illustrator
- Extending Photoshop’s DOM by adding Callbacks
PatchPanel (PP) - Integrating your ExtendScript with PP
- Flash Panels for multiple Creative Suite applications
- Painting with Code in Photoshop
Photoshop Panels (aka CSXSLibrary.swc) - Enhanced Hello world
- Integrating your ExtendScripts with the CSXSLibrary
- Integrating Papervision3d with your Photoshop Panel
- Integrating WiiFlash + Papervision3d with your Photoshop Panel
It’s important to note that these tutorials would not be possible without the tireless support of John Nack, Bernd Paradies, Michael Daumling, Jeff Tranberry and Tom Ruark.
If you do choose to download the tutorials, please note that you are not allowed to republish them without my permission. In addition, they are as is… and will be largely unsupported due to my increasingly busy workload. With that said, I hope you find them invaluable in your pursuit to push the creative edge further and to make these applications sing for you.
The July/August 2009 issue of Photoshop User magazine is out and I had the honor of filling in for Matt in the “Photoshop Speed Clinic” column while he worked on the feature. In this column, I explore how you can use an ExtendScript to iterate through Photoshop actions in order to generate interesting visuals. Subtly, this is a way to introduce to non-programmers the power of ExtendScripts and for… loops.
Dr. Woohoo will be at the Santa Fe Complex on Wednesday, May 6th at 11:30am for a show-n-tell session exploring how he – and you – can generate artwork by hacking into Illustrator, Photoshop and Maya via code. As the result of some early mash-ups within Illustrator, Woohoo was invited to work behind the scenes at Adobe, kicking the tires on a series of tools that simplified and enhanced the process of driving the Creative Suite from Flash based content. Based on this experience, Woohoo will explore how he connects the dots between ExtendScripts, Adobe AIR applications and Flash plug-ins to Illustrator and Photoshop in order to redefine what is creatively possible. In addition, inspired by the openFrameworks (OF) workshop he attended at Golan Levin’s Art and Code Symposium at Carnegie Mellon, Woohoo will also connect the dots between OF & Maya, along with a few other surprises.
Tutorials on how-to connect the dots between these toolkits and applications will be distributed to participants.
For a preview of Woohoo’s recent work, here are a couple of videos from his recent show-n-tell session(s) at FITC and here.
This workshop, led by Dr. Woohoo, will explore multiple ways of generating your artwork by leveraging existing features and functions of Adobe Photoshop and Illustrator — whose features we will combine with the capabilities of ActionScript 3, Adobe AIR applications and Flash plug-ins. We will start with simple examples that require little to no programming skills, then we will begin to record and repurpose code that automates Photoshop and continue on until we are creating our own applications and plug-ins that can communicate with and control Photoshop and Illustrator.
We will use the ScriptingListener plug-in to record and save our actions as scripts that can be run from within Photoshop; we will write our own ExtendScripts that enhance Illustrator and Photoshop’s capabilities using Adobe’s ExtendScript Toolkit; we will then integrate our ExtendScripts with our own AIR application that we create in Flex Builder utilizing Adobe SwitchBoard (which handles the two-way communication between the AIR and Creative Suite applications; and we will develop our own Flash plug-ins for Photoshop in Flex Builder utilizing Adobe PatchPanel.
BYO Laptop. view the Grassy Knoll website for requirements and ticket prices.
The presenters at the ART AND CODE conference, 7-9 March 2009 at Carnegie Mellon University, Pittsburgh.
“Left to right: John Maloney (MIT/Scratch), Golan Levin (CMU), Tom McMail (Microsoft Research), Ira Greenberg (Miami U. Ohio), Hans-Christoph Steiner (NYU), Evelyn Eastmond (MIT/Scratch), Casey Reas (UCLA/Processing), Zachary Lieberman (Parsons/openFrameworks), Theodore Watson (openFrameworks), Ben Fry (Processing), Arturo Castro (openFrameworks), Sebastian Oschatz (Meso/VVVV), Daniel Shiffman (NYU), Luke DuBois (NYU/Cycling74), Dr. Woohoo (ExtendScript), Why the Lucky Stiff (Hackety Hack). Not pictured but also presenting: Don Slater (CMU/Alice), Wanda Dann (CMU/Alice).” - Courtesy of Golan Levin.
I am still in state of inspirational shock after the incredible Art and Code conference that Golan put on this past weekend at Carnegie Mellon. The toolkits people are using for creating artwork is simply amazing. If you have a chance, please check out any of the following:
Part of my show-n-tell session this weekend at Carnegie Mellon for the Art and Code symposium will focus on how other people are generating artwork using Adobe’s ExtendScript, SwitchBoard, PatchPanel or AIR applications (to drive other existing creative applications via a socket connection) to generate their artwork. If you would like your artwork to be included, drop me a line.
* /
Recent Comments