Papervision3D 3.0: It begins. Now using Git!

October 15th, 2009 mosesoak

http://twitter.com/Papervision3D
http://github.com/Papervision3D/Papervision3D

To get started, install Git (http://code.google.com/p/git-osx-installer/), open Terminal and navigate to the parent folder you'd like to put papervision, e.g. your general actionscript workspace folder. (Hint: you can type 'cd ' then drag and drop the folder from a finder window onto the Terminal window to instantly get the path.)

Now enter the clone url listed at their Github page followed by the name of the new folder you'd like it to appear in, like so:
git clone git://github.com/Papervision3D/Papervision3D.git Papervision3D3

Instantly, it will create a directory called Papervision3D3, automatically git-initialize it, and pull the entire repository in a matter of seconds. That's right, using Git you get to work in the entire repository locally, create branches and so forth. Unlike SVN git works from a single .git folder within the main folder, instead of polluting all subfolders with .svn garbage -- you can even move the initialized folder wherever you like and it will still work fine.

You can't push any changes you make directly back to the official Papervision3D repository. To set up a public or private fork of their project get a Github account and click the button at their project that says "fork". Now you have a working copy at your own hosted page and can pull, commit, and push to your heart's content! Later it's easy to do diffs and merges with their project, and if you write something worth keeping they can do the same, easily bringing portions of code from around the community into their build selectively.

They call this "social coding". :-)

Unless you have ambitious plans to contribute to their project right away though, to get started just do a clone as described above, which is more like checking something out of a googlecode public svn. You can import the folder into Flash Builder, Flex or FDT and run the file called Main to see a wireframe 3D example scene that already works. Go team!

Make sweet video holiday cards with Animoto!

December 8th, 2008 mosesoak

Online holiday cards are usually worth a chuckle but no one really pays much attention. At Animoto we've released a special card service that is truly meaningful because the content you send is really your own photos. It lets you create a high-quality music video from your photos instantly, then wraps it in a beautiful greeting card page with a special 3D intro and outro! Your family will love it.

Check out this sample card then go to Animoto's home page and click "holiday greeting" at the bottom of the page to make your own, they're free!!!

Animoto holiday cards!

Animoto holiday cards!

You'll also see that we're offering the "gift of animoto" – a gift membership worth $30. Well if you like the holiday card feature, post a positive comment here saying what you dig about Animoto and I will gift you a free pass!

SelectiveBitmapDraw classes: draw just specific child objects or DisplayObject3D’s to a bitmap.

October 2nd, 2008 mosesoak

Sometimes you need a Bitmap to capture nested containers from a flat top-down perspective, but you're really just interested in drawing one or more of the nested objects and not others. This utility works by quickly toggling the visibility of other children off, then restoring it after draw(). Use a SelectiveBitmapDraw instance with the standard display list or a SelectiveBitmapDraw3D instance to capture specific nested DisplayObject3D's in a PaperVision3D scene.

Available here: http://www.mosessupposes.com/utilities

GoASAP & Fuse featured in Open Source Flash book

August 21st, 2008 mosesoak

Because Flash is a proprietary plug-in technology and its coding language evolved gradually over about a decade, it took a while before the words Open Source meant anything to its developer pool. But when it hit, it hit hard: Aral Balkan's seminal site OSFlash introduced an already-thriving community to a whole new world of licensing code for the purpose of free and easy sharing, modification and reuse. Open Source took off in the Flash world and some of the most powerful software ever produced for the Flash Player is available for free, such as the incredible Red5 media server and the mighty PaperVision3D.

Friends of Ed is now giving you the chance to catch up on this little revolution with their new book, The Essential Guide to Open Source Flash Development, and I'm proud to say that I'm one of the contributing authors! My chapter covers several Open Source animation tools that I've released for ActionScript 2.0 and 3.0.

Processingjs: Processing in JavaScript!

May 9th, 2008 mosesoak

What a cool idea! John Resig has successfully ported the Java Processing API to JavaScript. Expect to see a lot more Flash-like effects on HTML web pages in the near future!

MosesSupposes @ FWA

April 10th, 2008 mosesoak

I'm honored to have gotten a 'Silhouette' writeup at Favorite Website Awards. Number 3, right after Yugo! Now that's an honor. The article talks about Fuse and GoASAP and then goes into some crazy hilarious sermon or something. Hehe.

http://www.thefwa.com/

Click: Featured > Silhouette #2 Moses Gunesch (april 9th)
[plaintext version of the article here.]

Thanks Craig & FWA! :D

Hilarious spoofs: Why Flash? Why Flex? and Why AJAX? from Phil Kerman

February 18th, 2008 mosesoak

You might have seen Adobe's latest YouTube marketing stunt, where their people give impromptu rants on "why flash" "why air" and so forth.

I guess you can't put anything up these days without expecting a parody to crop up within mere seconds. Well it looks like the latest Weird Al of the WWW is the Flash world's own notable author Phillip Kerman. Here's Phil's YouTube takes on:

Why Flash?, Why Flex?, and a hilarious counter-spoof of his own parody, Why AJAX?

InteractivePNG

January 19th, 2008 mosesoak

Like magic, transparent parts of a PNG in your MovieClip are ignored during mouse interactions. Check it out!

Normally the clear areas of a PNG are treated as solid, which can be especially frustrating when dealing with a lot of images that overlap each other because they tend to block mouse interactions on the clips below them.

This utility fixes that so that mouse events don't occur until you bump against a solid pixel, or a pixel of any transparency value besides totally clear. InteractivePNG lets you set an alphaTolerance level to determine what transparency level will register as a hit.

This was surprisingly tricky to write, so I'm releasing it open source in hopes that it helps someone out there.

Source and Documentation here

I chose not to use a mask, because that would mean managing the displaylist outside the movieclip, I wanted this to work for any freestanding movieclip without any complicated management within the program. I've also heard of people creating an overlay bitmap with all the parts and running hit detection on that, but that is a little clunky – it adds filesize and makes it hard to update your layout.

I know it looks extremely simple, but if you're curious, here's what goes into it. First I detect & suppress mouse interactions at which time I toggle the clip's mouseEnabled flag off, and use an ENTER_FRAME event to detect when the mouse bumps into the edge of the image and reenable the mouse, toggling it off again during roll out. It uses the native method BitmpaData.hitTest. Finally when the mouse leaves the bounds of the movieclip, the tracking is turned off and the system is reset to listen for the mouse to knock again. It was particularly tricky to keep the cursor hand from flickering when the edge of the image is passed when buttonMode is turned on, which is done by temporarily caching that property on the initial round of suppressed events. Like I said, it looks simple, but...!

The story of stuff

January 5th, 2008 mosesoak

This website is great, really informative and a fantastic use of Flash technology to communicate a non-advertising message (too rare these days). It describes some pretty horrifying facts about our consumer system and its impact on the real world in a simple, fun animated format.

www.storyofstuff.com

Using FZip on the Mac

December 10th, 2007 mosesoak

FZip is a smashing new utility that allows you to load zipfiles into SWFs at runtime, accessing each file as the archive progressively loads. The official page is here but the latest versions are often found at Claus Wahlers' blog.

My trouble with it was that archives created by Mac OSX are incompatible with it, and will make FZip throw an error, “Data descriptors are not supported.” The other trouble is that I'm not a command-line geek so it took me a while to figure out how to zip a file, then apply the included Python-based patch. Hopefully someone with real OSX skills will create some little app that batches these processes, they're a real pain but at least we Mac users can now stream ZIP files... Woohoo!

Wordpress is erroring out every time I try and post this information but it can be found in this comment.