November 17, 2010

Adding 3D to Your Arsenal (RIA Unleashed: Boston 2010)

Adding 3D to Your Arsenal by Charlie Schulze

Can find a bunch of information on his blog at papervision2.com. Working on redoing site with Away3D examples as almost everything is Papervision3D focused at this point.

Talk is more about how to add 3D to your application than how to do 3D modeling.

Good uses for 3D


  • Games - Redbull / Farmville

  • Enhancements to entertainment, automotive, educational sites

  • It's just the spice not the main course

Bad Uses


  • Games that should just be 2D

  • Text and content heavy sites

  • AmericanExpress.com

What is easy


  • Getting started

  • Creating rich and compelling 3D experiences

  • Moving into more advanced aspects of the 3D engines

What isn't easy


  • Performance tweaks

  • General optimization

  • Advanced mathematics
  • Two main engines are Papervision3D and Away3D. Right now Away3D is planning to have better support for Molehill. Speaker has found Away3D to be more optimized (especially if you can target Flash Player 10) and robust, so if he had to pick would go with that, even though he has mostly used Papervision3D.

    Both engines follow the same format of creating a view, renderer, scene, objects with materials, and a camera. Besides a few syntax differences the majority of your code will be the same regardless of which engine you are using.

    One gotcha is that in Away3D by default planes lay flat, need to change that otherwise it is hard to see anything.

    Likes TweenMax for all his tweening.

    Working with 3D models is hard. They really need to be optimized for the engine you are working with.

    Tags: 3d api flash riaunleashedboston2010

September 26, 2007

Flashforward Boston: BitmapData and 3D Image Manipulation in AS3

Rough Draft Notes

Paul Ortchanian, Goodby Silverstein & Partners

Effects don't all need to be done with OOP

Don't always view in terms of x and y. view in circle instead 0, 180, 360 degrees.
think in circles, best way to think of programming in 3D

cerate illusion of depth by scaling elements.
scale=fl/(fl+_z);
_x=x*scale;
_y=y*scale;
_xscale=_yscale=scale*100;

principal rotations

pitch, roll, yaw
find formulas on wikipedia

need to eliminate objects in background

bezier formula

model tween as line that point follows x, y determine speed at each point

Flash 8 added Flash Image API.
bitmap color: argb (alpha, red, green, blue)
can apply masks

DisplacementMapFilter
ColorTransformMatrix

3d radian manipulation
3d skew

Transform matrix is very complex but very powerful.

Tons of examples with code at: reflektions.com

Tags: 3d flash flashforward2007boston