Away3D.com
   
 
Quality dvd movies, buy movies online and download movies!!!
rulururu

post Away3D Global Animation the easy way

December 20th, 2007

Filed under: Demos, Engine, Fun/Games — Fabrice Closier @ 12:07 pm

tiling

In order to animate in Flash3D you need to use pretty advanced 3D tools to generate and export animation data. For many it’s just a bridge too far.
And even for the professionals, it often cost too much development time. And because of this, many choose not to animate at all. I think that’s a shame.

During the last weeks I’ve worked on many new features for Away’s native animation system, and together with other team mates have spend lots of time looking at ways to ensure easyness of use for the pro user as for the starter.

I’ve tried here to build in a few of those handy features in this demo:

- Path animation system. Both the camera are on a path in this case.
- The animated hummingbird is animated automatically by Away’s animation system, (as you will see bellow with the cube example, it’s very easy to accomplish the same thing natively now).
- Target following: The camera follows the bird according to its position.
- AlignToPath: Both camera is automatically oriented as it moves on the path.
- And of course the tiling feature in action.

Note that this demo is not using Away’s 1.9 but my good old workhorse dev version of the engine, so expect about 30-35% more speed with the 1.9.x and higher! Why? Simply because we haven’t ported the tiling in the latest version yet!

And of course i want to thank Peter Kapelyan for the HB model, Meowza for the bird texture and not to forget the beautifull music done by Atom(bang)

Here a little demo that shows how the bird is being animated. In this case i use cubes, just to show you how easy this is. Just click the cube to see it.
animation

private function makeBoxeAnimation():void
{
var mat:IMaterial = new BitmapMaterial(myBitmadata, {});

var cube = new Cube({width:350, height:350, depth:350});
var cube2 = new Cube({width:500, height:50, depth:250});
var cube3 = new Cube({width:150, height:450, depth:50});
var cube4 = new Cube({width:650, height:250, depth:550});

_anim = new Animator(cube, [{vertices:cube2.vertices, prefix:"cube01"},
{vertices:cube3.vertices, prefix:"cube02"},
{vertices:cube4.vertices, prefix:"cube03"},
{vertices:cube2.vertices, prefix:"cube04"}] ,
{material:mat, y:0, x:0,z:0,bothsides:false});
this.scene.addChild(_anim);

_anim.play({prefix:”cube”, smooth:true, loop:true, fps:.5});

//let the fun begin
stage.addEventListener(Event.ENTER_FRAME, this.refreshScreen);
}

private function refreshScreen(event:Event):void
{
_anim.rotationX += .5;
_anim.rotationY += 1.5;
_anim.rotationZ += .5;
this.view.scene.updateTime();
this.view.render();
}

Fabrice

Popularity: 18% [?]

9 Comments »

  1. !!!

    Comment by Edin BULGARIA — December 21, 2007 @ 3:29 am

  2. this is fantastic, – can we see how the humming bird’s wings is accomplished?

    Comment by Jarosia AUSTRALIA — December 23, 2007 @ 6:41 pm

  3. We expect our extended documentation to be online soon…

    Comment by admin NETHERLANDS — December 25, 2007 @ 10:59 am

  4. [...] and here is the full post regarding this demo from Fabrice, for those interested in the [...]

    Pingback by EhhDawh is soundtrack for new Away3D tech demo | atom(x) UNITED STATES — January 31, 2008 @ 2:48 pm

  5. Where does the new Animator class come from I’m using Flex and dont see it.

    I also have some 3DS Max characters I exported to Collada, but not sure how to access the animation frames like a walk loop, run loop etc. Same for MD2. Would be useful to know how to use the animation for collada mainly. Have a big platform game I am building and this is the only drawback.

    Comment by Manny UNITED KINGDOM — March 29, 2008 @ 8:16 pm

  6. Hey many, I saw exact same question from you on my blog… there is an answer there :)

    Comment by Fabrice Closier NETHERLANDS — March 30, 2008 @ 3:17 pm

  7. Getting Error when I run the following. I can see my objects but no _anim.play() is triggered. Anyadvice.

    private function boxAnim():void
    {
    var cube:Cube = new Cube({width:100, height:100, depth:200});
    var cube1:Cube = new Cube({width:500, height:100, depth:200});
    var cube2:Cube = new Cube({width:100, height:700, depth:200});
    var cube3:Cube = new Cube({width:630, height:230, depth:600});

    var vert1:Object = {verticies:cube1.vertices, prefix:’cube01′};
    var vert2:Object = {verticies:cube2.vertices, prefix:’cube02′};

    _anim = new Animator(cube,[vert1, vert2] );

    view.scene.addChild(_anim);

    _anim.play({prefix:’cube’, smooth:true, loop:true, fps:10})

    the onEnterFrame is being called when the app initializes.
    }

    private function refreshView(e:Event):void
    {
    view.scene.updateTime();
    view.render();
    }

    TypeError: Error #1009: Cannot access a property or method of a null object reference.
    at away3d.animation::Animator/generate()
    at away3d.animation::Animator$iinit()
    at TestClass/::boxAnim()
    at TestClass/::init_app()
    at TestClass$iinit()
    at start_fla::MainTimeline/start_fla::frame1()

    Comment by K Reg UNITED KINGDOM — May 24, 2008 @ 11:08 am

  8. That might be because the property ‘verticies’ is not the expected ‘vertices’ in the objects… but this is the wrong place to ask/get answers, please register to our usergroup for technical support.

    Comment by Fabrice Closier NETHERLANDS — May 24, 2008 @ 4:57 pm

  9. I have Imported .3ds shark model in Away3d. how can i set animation on shark.
    can i import 3ds animation in away3d.. please give me suggession..

    Thanks

    Comment by Talal PAKISTAN — July 21, 2010 @ 8:04 am

RSS feed for comments on this post. TrackBack URI

Leave a comment

ruldrurd
   
 
Hair drug test and herbal detox products. Visit drug detox website for more details on cannabis and marijuana drug detox.
FireStats iconPowered by FireStats
Powered by WordPress, Web Design by Laurentiu Piron
Entries (RSS) and Comments (RSS)




rmvb player and mkv codec