Archive for June, 2007

Saturday, June 30th, 2007

There is no Flash or Java support on the iPhone. This had leaked earlier but now that it is out this is verified and it pretty much sucks.

This limits the type of gaming market the iphone could become, or the type of shiny chrome apps that could be built with Flash. I guess games can be built with HTML5 and javascript (um thanks Jobs).

I was at least hoping for FLV support which would open up many clip sites for mobile, but then again this would compete with iTunes and QuickTime.

Current knowns about the iPhone dev platform:

  • there’s no Flash or Java support
  • there is PDF support
  • Quicktime is used for encoding and displaying video and audio
  • said video is encoded via H.264
  • with Safari on the iPhone, links can be embedded in web pages to allow phone calls from a click; this would be insanely useful for corporate directories and such
  • web pages are limited to 10 MB (!), Javascripts can only run for five seconds (maybe no games at all :( )
  • the iPhone’s browser user agent: Mozilla/5.0 (iPhone; U; CPU like Mac OS X; en) AppleWebKit/420+ (KHTML, like Gecko) Version/3.0 Mobile/1A538a Safari/419.3

Also more info from here:

  • HTML5
  • 10MB max html size for web page
  • Javascript limited to 5 seconds run time
  • Javascript allocations limited to 10MB
  • 8 documents maximum loaded on the iPhone due to page view limitations
  • Quicktime used for audio and video
  • stylesheet device width:480px
  • there are no scroll bars or resize knobs. the iphone will automatically expand the content
  • new telephone links allows you to integrate phone calls directly from your webpage. remember this is only on safari.
  • built in google maps client for integrated mapping from your website
  • iPhone screen size 480×320
  • encode movie size 480×360
  • Links to movies on a web page will take users directly to video full screen playback

They are really controlling the experience early on, something I was hoping they wouldn’t do. Controlled markets is the current problem with mobile platforms in the US. I am sure better specs and flash might pop up in later versions of the iPhone in Apple fashion of increasing the hype on each version. Advancements such as 3G, more than 8GB storage, flash maybe, just not sure about this one due to the competition of Quicktime and iTunes. This severely limits the RIA web on the iPhone, at least this version of it.

UPDATE: Jesse Warden has links to using Flash content inside of Quicktime. This coud be a gaming option after all. It still limits the web browsing but in terms of interactives and games this could be good.

Flash on the iPhone via Quicktime: Part Deux

Apparently the “enabling” of Flash is as simple as clicking a button, correcting my original coverage.

Check out I2Fly’s coverage of iGiki.com’s iPhone Flash Games. Also, some of Gary’s ported Flash games worked.

Be sure to check out this out regarding a mobile web with no Flash.

Saturday, June 30th, 2007

Adobe AIR apps are starting to pop up more. After the Grant Skinner AIR app for digg.com it appears Kevin Rose has launched pownce which is a twitter/email/friend/social sharing site/service. The desktop app for pownce.com is built with AIR. I believe AIR will really take off with these types of apps succeeding on it. Pownce is only alpha but it is hard to see it not being successful with the amount of digg users that will spill over.

Pownce (you have to be invited to private alpha)

Other apps for AIR so far that are usable and ready:

FineTune
Competitor to last.fm. I wonder how long til a last.fm air app.



Digg Desktop Widget (from Adobe sponsored digg API contest)

Other AIR apps can be viewed here including kuler, a twitter app and more. And also here at Rob Christensen’s blog.

Friday, June 29th, 2007

merhl has created an Adobe AIR iPhone widget for using the AIR runtime that is pretty cool.  It only has some sample screens for most buttons in it but you can actually browse the web on it using the web browser and it flips sideways to show the screen flip.  Check out your website or blog on the desktop iPhone.  Get your AIR iPhone now!

 

merhl has made it auto updating with AIR so as he adds more functionality it will autoupdate.  That is one neat aspect of doing desktop app/widget work with flash and AS3 in AIR is that it is much more capable of syncing content and that content is usually extremely optimized for fast delivery and keeping it up to date.  Plus you can make chrome and shiny things with it.

Thursday, June 28th, 2007

John Grden the resident Flash rockstar \m/ and of Red5 fame has been kind enough to release the Papervision3D FlashCS3 UI Components.

What’s nice about this is it lowers the bar to people using Papervision3D and make it more accessible to non programmers.  I have been working to get Papervision3D in many projects but this will make it easier to get designers more into the engine and using Flash to create pv3d experiences. It may also help others to combine pv3d and 2d into some neat mashups (all this can be done before in script but when barriers are lowered usually more creativity follows, also visual use of 3d models in the IDE is powerful).

Here’s what John has cooked up:

Finally! After waiting for a couple of months, I’m able to release the new Flash CS3 Papervision3D Components! There’s a lot to cover, but to get things started, let’s look at the features:

  • Design-time render and editing in Flash IDE
  • 3 Material types supported – BitmapFileMaterial, BitmaAssetMaterial and MovieAssetMaterial
  • Creates MovieScene3D and Free or Target camera
  • Manages resizing / centering of Papervision3D scene [optional]
  • Dynamic masking to constrain the viewable render area to the bounds of the component [optional]
  • Full API and access to Scene, Camera, Collada objects to code around
  • Automatically loads materials via Collada file [when materials list is not given]
  • New Custom Panel for modifying rotation, camera zoom, camera focus, camera Z at design-timeReady to get started?
    Download it hereYou’ll needs some docs with that sauce:
    DOCSWanna see it in real world action? I used it for the slide presentations at the class this last weekend at RMI.
    Here are the demo files and the project for the Jedi Training Sphere slide show

    In case you wanted to see the Jedi Sphere in action, and thus, the slides from the classes:
    Developer’s slides
    Designer’s slides

    And of course, you can find all of that stuff out on Google code:
    Papervision3D google home

Be sure to check out the quick video and more info over at RockOnFlash

Rock on John!

Monday, June 25th, 2007

AS3 community and code has been moving very quickly since the beginning of the year. Animation kits are no different. So we are revising our list of best animation kits for AS3 due to the recent changes and the kits that have heavy usage in AS3 as compared to AS2.

Best Flash AS3 Animation Kits:

  1. Tweener
    • Author: Zeh Fernando, Nate Chatellier
    • URL: http://code.google.com/p/tweener/
    • Download: [source]
    • Pros:
      • Small and quick, compact library
      • Functional syntax (functional coders will like this as well as OO due to its simplicity)
      • Very agile for things like bezier tweening and papervision3d early on.
      • Based on MCTween and Tweener As2
      • Takes only about 10kb of your swf compiled
      • Quick learning curve for levels of all scripting
      • Open Source, MIT License
      • Forgets about MovieClips and TextFields and simply allow any instance of any class to be tweened seamlessly
      • Much more extensible when it comes to using custom transitions
      • Much more extensible when it comes to using custom special properties, allowing ‘extensions’ to be built and added to Tweener when needed
      • Much easier to create complex tweenings due to additional, more powerful events
      • Much easier to “wrap around” methods and functions which Tweener doesn’t natively support
      • New features like setTimeScale(), .skipUpdates, and addCaller(), which are very specific to certain situations but can help wonders
      • Promotes reusing and standardization by allowing tweening ‘templates’ to be built and reused
      • Uses the same syntax between the AS2 and AS3 versions, but maintaining the standards of each version for values or property names
      • Produces code that’s much easier to read and understand
    • Cons:
      • Some special properties not yet implemented (brightness, hue etc – however easily added and extended)
      • Only EnterFrame based (although this is the best method)
      • Doesn’t feature native filter tweening for all filters yet
      • Has no Flash IDE code completion or code hinting available
      • The developer must remember the name of the tweening properties available, or have them at hand
      • Tweener hasn’t gone through many speed optimizations yet; while impossible to notice on most real-world scenarios (for example, when using less than half a thousand tweenings at the same time on AS2), MC Tween has better performance than Tweener
  2. TweenLite, TweenFilterLite
  3. Animation Package
    • Author: Alex Uhlmann (works for Adobe now)
    • URL: http://www.alex-uhlmann.de/flash/animationpackage/
    • Download: [source]
    • Pros:
      • Open Source, MPL License
      • Mature, been around since AS1 and quick to update to AS3
      • Lots of extras like shape, color, filter, effects tools
      • Things like Drawer and Animation with paths to arrays provide ‘drawing’ and playback capabilities or SVG playback
    • Cons:
      • Stuck in AS3 alpha, maybe Alex is busy at Adobe?
      • Rather large due to the extras
      • Takes around 40kb of your swf (worth it if using extra features)
  4. Animation System v2.0
    • Author: Ryan Taylor
    • URL: http://www.boostworthy.com/blog/?p=170
    • Download: [source]
    • Pros:
      • Open Source, MIT License
      • Specify the use of ‘enter frame’ or ‘timer’ as your render method on a per-animation basis.
      • Easily complete many common animations using the animation manager with one line of code.
      • Create complex sequences of tweens and actions using the virtual timeline.
      • Easily animate any property of any filter.
      • Advanced color support that includes brightness, contrast, hue, and saturation.
      • Common interface used for garbage collecting throughout the entire package.
      • Create motion paths for display objects with the option to auto-orient to path.
      • Advanced animation support using paths as value maps.
      • Extremely extensible architecture.
      • Clearly defined API.
      • Full-blown documentation using ASDoc (same as Adobe livedocs).
      • Eleven example files ranging from basic to advanced usage and theory.
    • Cons:
      • New, AS3 only version
      • Rather large due to the extras
      • Takes around 20-30kb? of your swf (need to test this)

FuseKit is missing a huge opportunity by not updating to AS3 yet, it might be too late as some of these kits above are simply too good for the situations you may come across where you want to standardize on an animation kit.

Right now for most projects I am using Tweener for AS3, with a few projects using Animation Package. I still use FuseKit or Tweener AS2 when doing AS2 but this is only maintenance, new projects are all AS3 simply due to the speed of the new VM and to make code more valuable as it has a longer life.

But as time goes on things may change, usually the simplest and most agile systems keep up which this usually means the open source ones and the ones with simple syntax. Right now that one is Tweener. Tweener has been especially quick and easy for Papervision3d projects.

I have also tried and sampled Animation System 2.0 of which I have heard good things and used Animation Package quite a bit more in effects than Tweener. It depends on the job and what is required in the project for th ebest animation package decision, or make your own.

Am I missing any other good ones?

Monday, June 18th, 2007

Polygonal Labs is building a Motor Physics Engine (unreleased) and here is a test that has boxes stacked up that you shake. I am looking forward to the Motor Physics Engine by Michael of Polygonal Labs after going through APE Physics engine by Alec Cove which is pretty slick.

The tools so far by polygonal labs such as the AS3 Data Structures for Game Developers have been excellent and made it into many games and engine tests of mine and his blog is a really well presented and the topics are always well presented and researched.

Be sure to check out the 50 boxes test with Motor Physics at Polygonal Labs

Also if you don’t regularly visit polygonal labs you are missing out on some really good research and tools. The recent post with the graph-based A* sample using the AS3 Data Structures for Game Developers was killer.

Thursday, June 14th, 2007

Open Source Flash Conference – June 15th UPDATE(Change In Time)

The second Open Source Flash Conference will be held on June 15th. The conference will start by 11:00 am Eastern Time. This conference is completely free and to attend you only need a computer , the internet and flash installed on your computer.

http://osflash.org/blog/2007_06_12_open_source_flash_conference_-_june_15th

**Recorded Sessions**

Aral Balkan – Keynote Speech
https://breeze.itap.purdue.edu/p53406718/
Ralph Hauwert – Papervision 3D
https://breeze.itap.purdue.edu/p83105421/

Aral Balkan – SWX
https://breeze.itap.purdue.edu/p62103321/
Nicolas Cannasse – Haxe Programming Language
https://breeze.itap.purdue.edu/p22188329/
Firdosh Tangri – ASWing Component Framework
https://breeze.itap.purdue.edu/p20838194/
John Grden – The Red5 Project
https://breeze.itap.purdue.edu/p20388149/
Igor Costa – Flex Applications using Flex 2 SDK and Granite Data Services and Conclusion
https://breeze.itap.purdue.edu/p19208031/
Special Drum Solo – John Grden
https://breeze.itap.purdue.edu/p38865264/

Session Details

Session : 22
Start Time : 06/15/2007 10:00 AM
End Time : 06/15/2007 4:26 PM
Number of Attendees : 838
Peak : 256

Polls

How do you rate this conference
https://breeze.itap.purdue.edu/admin/meeting/sco/reports/sco/polls/poll-answer-distribution?interaction-id=6712579&sco-id=6438511
How good was John’s Drum Solo
https://breeze.itap.purdue.edu/admin/meeting/sco/reports/sco/polls/poll-answer-distribution?interaction-id=6713919&sco-id=6438511
Are you more design or development oriented?
https://breeze.itap.purdue.edu/admin/meeting/sco/reports/sco/polls/poll-answer-distribution?interaction-id=6713995&sco-id=6438511
You are using recently mostly…
https://breeze.itap.purdue.edu/admin/meeting/sco/reports/sco/polls/poll-answer-distribution?interaction-id=6714276&sco-id=6438511
ASWing
https://breeze.itap.purdue.edu/admin/meeting/sco/reports/sco/polls/poll-answer-distribution?interaction-id=6715098&sco-id=6438511

Tuesday, June 12th, 2007

Right clicking and other mouse support in flash is not really a shining star but in AS2/AS3 you *can* stuff the context menu with items. You can clear out all but Settings and About from the menu and stuff in other items that may pertain to a selected movieclip or the entire app you are building. This can be good when adding multiple functions into applications and for extra functions that you want to make available from a quick location such as full screen, selecting an item etc.

To enable a context menu for full screen capabilities take this example:

1) Make your document class of your AS3 Flash CS3 file to the class below.

package
{
import flash.display.*;
import flash.errors.*;
import flash.events.*;
import flash.filters.*;
import flash.geom.*;
import flash.net.*;
import flash.media.*;
import flash.ui.*;
import flash.utils.*;
import flash.xml.*;
public class FullScreenTest extends MovieClip
{
public function FullScreenTest()
{
// create the context menu, remove the built-in items,
// and add our custom items
var fullscreenCM:ContextMenu = new ContextMenu();
fullscreenCM.addEventListener(ContextMenuEvent.MENU_SELECT, onContextMenuHandler);
fullscreenCM.hideBuiltInItems();
var fs:ContextMenuItem = new ContextMenuItem("Show Full Screen" );
fs.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT, onShowFullScreen);
fullscreenCM.customItems.push( fs );
var xfs:ContextMenuItem = new ContextMenuItem("Exit Full Screen");
xfs.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT, onShowNormalScreen);
fullscreenCM.customItems.push( xfs );

// THIS ASSUMES YOU HAVE A MOVIECLIP IN THE LIBRARY
// THAT IS SET TO A CLASS NAMED 'mc' that inherits from MovieClip
var m:MovieClip = new mc();
m.contextMenu = fullscreenCM;
addChild(m);
}
// functions to enter and leave full screen mode
function onShowFullScreen(event:ContextMenuEvent):void
{
stage.displayState = StageDisplayState.FULL_SCREEN;
}
function onShowNormalScreen(event:ContextMenuEvent):void
{
stage.displayState = StageDisplayState.NORMAL;
}
// function to enable and disable the context menu items,
// based on what mode we are in.
function onContextMenuHandler(event:ContextMenuEvent):void
{
if (stage.displayState == StageDisplayState.NORMAL)
{
event.target.customItems[0].enabled = true; // show full screen button
event.target.customItems[1].enabled = false; // hide normal screen button
}
else
{
event.target.customItems[0].enabled = false; // hide full screen button
event.target.customItems[1].enabled = true; // shoe normal screen button
}
}
}
}

2) Now Export to HTML and be sure to change the exported parameters in the HTML file to allowFullScreen = true (for the fullscreen effect) and menu = true (for the ability to add in context menu items) to whatever library you use for embedding flash:

   'menu', 'true',
   'allowFullScreen', 'true'

OR if using HTML parameters

<param name="allowFullScreen" value="true" />
<param name="menu" value="true" />

You can view a sample here. (right click on the movie clip and ‘show full screen’, then ‘hide full screen’)

You can download a sample FlashCS3/AS3 version here.

If you want more information on fullscreen check here and here (downloadable sample and component).

Sunday, June 10th, 2007

Tinic Uro who works on the Flash machine recenty posted some great news to hopefully a new direction, possible hardware acceleration with the next Flash update! This is mainly for 2d drawing acceleration but Tinic also notes in his first point that this update improves the speed of Papervision3D (currently a fake 2d painters algorithm 3d).  Adobe is listening to the market on this one.

And what is this, OpenGL and DirectX hardware scaling? It helps to draw the full screen version faster since its more taxing on the processor probably but this will lead to further use of OpenGL and DirectX for 3d, I hope.

Full-screen mode with hardware scaling. Probably the biggest new feature in the Flash Player Update 3. This leverages DirectX on Windows and OpenGL on OSX. There is an new API to control the behavior which was required since we could not change current behavior and we wanted to give the maximum flexibility possible. I know you are probably eager to use this feature, we will post more information on this on labs.adobe.com soon. I’ll also will give you much more technical details in an upcoming blog post.

Found via Zeh. I have dreams of hardware acceleration in flash and what it will do to the gaming world. Microsoft has Silverlight which they could easily make DirectX capable and might as well at such low penetration rates right now, but they would stop at switching to OpenGL I think for cross platform support.  Adobe might be willing to risk it and since they already own Director, roll in OpenGL engine support into Flash and win the 3d web battle not to mention just entirely take 2d effects and animation to a new level as well.

UPDATE: Here is Tinic showing the 1080 video with nhardware acceleration in the new update. Anyone with >2 screens at work, they get stuff done.

http://video.onflex.org/2007/06/14/tinic-uro-shows-new-fullscreen-hd-video-in-flash-player/

Thursday, June 7th, 2007


Here’s some of the best commercial Papervision3d projects so far
(all commercial papervision I have seen so far has made theFWA):

1)  The Brahma Bus interactive project
       by Russian firm PARK Studios.


Customize your own VW Bus, received theFWA recognition.

2) Eye Project
      by
Takayuki Fukatsu aka fladdict

This is a killer use of pixel color mapping to video overall color.  It has papervision in the archives where it uses some more really well done pixel manipulation effects, received theFWA recognition.

3) The Net Eye interface (based on pv3d sample PaperCloud)
      by Neteye


Nice interface based on a pv3d sample project, received theFWA recognition.

*** The authors of papervision3D also have some of the coolest demos with it as well listed here.

Carlo Ulloa (based on pv3d sample Focus – by far the best)
      by Carlo Ulloa


Papervision3d homepage Shark Demo (wait for it, wait for it…)

Very First Papervision3D Star Wars Game by John Grden.


Also the original shader demos by Ralph Hauwert were killer.

About Vector/Web 3d

Papervision3d created by Carlos Ulloa Matesanz, Ralph Hauwert, and last but not least John Grden has really hit a development and design nerve, along with AS3 finally being ready for primetime. People are really excited about projects like this and it just goes back to my point that in the Vector Wars (Adobe vs Microsoft (haxe making a little noise in dev circles as well)) whoever rolls out cross platform 3d harware rendering in their plug in they will pwn.

Whos the Next Leader of 3d on the Web?

Director has been abandoned for new released until 2008 at least for any 3d updates (if we ever see another version).  But Flash could implement OpenGL (which would lead to it maybe being open one day) and Silverlight would implement DirectX but woudl probably stop at implementing OpenGL.  Flash *could* own with hardware rendering but it opens it up to many more plugins which lead to Director being maxed out at 50% market saturation. 

Anyways, it probably won’t happen but today we have some nice 3d engines in Flash that are fast enough in AS3 with its new shiny VM and there have been some nice commercial successes of the wise early adopters of this technology. Papervision3D, Away 3d (possible merging of code), and Sandy have all helped to add to the buzz around AS3.

UPDATE: Check out this Mech Demo that is making the rounds.  The demo has working hit detection and projectiles from the mech as well as animation on the 3d model.