Hey all,

For those interested in a more in-depth look at the new BSP/PVS generation,
here's my write-up:
http://www.derschmale.com/2010/04/22/bsppvs-released-in-away-3-5-0/
<http://www.derschmale.com/2010/04/22/bsppvs-released-in-away-3-5-0/>I'm
sure Fabrice will be doing a write-up showing the practical Prefab3D side of
things at some point too (if not, me mentioning this here kinda forces him
to) ;-)

Cheers!
David

On Thu, Apr 22, 2010 at 6:49 PM, Rob Bateman <[email protected]> wrote:

> http://away3d.com/away3d-3-5-0-2-5-0-released
>
> The release is out!
>
> While the latest scramble for bug fielding and fixing ensues, here is a
> definitive list of the changes you can expect in this version, aside from
> the BSP additions mentioned in the blog post:
>
>
> *HoverCamera3D* properties have been renamed to camelCase names, with *
>> target<property>* having its place taken with just *<property>*. for
>> situations where you want to update the target properties without stepping,
>> you can use the *hover()* method with an argument: *hover(true)*. this is
>> in-line with what currently exists for away3d lite.
>>
>> *Cube* has been re-written to support a map6 mode similar to the map6
>> mode used in skybox6 (essentially just a inside-out version). selecting
>> mapping is now done using a *mappingType* property that uses the
>> statically typed constants in a new *CubeMappingType* class. A *segmentsD
>> * property has also been added
>>
>> *WireCircle* has been renamed *WireRegularPolygon*
>>
>> *ILens* has been removed - we now rely purely on *AbstractLens*.
>>
>> *Billboard* has been renamed *Sprite3D* and moved to the sprites package.
>> It is added to an objectcontainer using a new *addSprite()* method. This
>> will eventually replace the older *Sprite2D* as a faster and more
>> adaptable class, but that will have to wait for a further revision...
>>
>> Lights no longer extend Object3D to save on processing and are now added
>> to a scene using a new *addLight()* method. This is part optimisation and
>> part simplification of the light interface - without extending Object3D the
>> properties of a light object become a great deal more self-explanatory
>>
>> the *Path* class has been moved to *away3d.core.geom*, along with *
>> CurveSegment* that has been renamed *PathCommand* and been merged with *
>> DrawCommand* to provide an easier transition between  path functionality
>> and drawing functionality. this includes a new method *drawPath()* on the
>> *Segment* class that takes the data in a path and draws its geometry.
>>
>> the animators package has had a lot of work - *Animator* is now a base
>> type for all animations, with *BonesAnimator* *VertexAnimator* and *
>> PathAnimator* all extending from it. mesh animations now use a *
>> VertexAnimator* object, the *Mesh* and *Geometry* classes have had their
>> *play()*, *stop()* etc methods removed and they now all exist in the *
>> Animator* class. things like md2 animations are stored inside a *
>> VertexAnimator* class, which again helps optimisation. There are a few
>> loose ends to tie up here with some of the old functionality offered by the
>> *AnimationSequence* classes, but these are curently being re-written. The
>> idea is that an *Animator* is a container for animation data, and is
>> applied to vertex information a bit like a modifier would be. This opens the
>> door for a much more flexible animation system in future - mixing bones,
>> vertex and path animations together, creating merge animators that can
>> crossfade between animation loops and so on.
>>
>> There are no more interfaces for materials. everything now inherits from a
>> single abstract material class called *Material*, with another abstract
>> material class further down the class hierarchy created for layering
>> materials called *LayerMaterial*. All materials can be applied to all
>> meshes (no distinction now between segment materials or face materials).
>> This simplified a bunch of code, and is a lot easier to understand.
>>
>> a small number of extrusion classes have been renamed: *PathExtrude* to *
>> PathExtrusion*, *TextExtrude* to *TextExtrusion* and *LathExtrude* to *
>> LatheExtrusion*. These have had setters produced for their properties so
>> that the *init* object is now optional, and geometry can be updated on
>> the fly. the remainder of the extrusion objects should follow suit very soon
>>
>> a new package for modifiers has been created, currently with two classes:
>> *HeighMapModifier* (which has been renamed from *NormalUVModifier*) and *
>> PathAlignModifier* (which has been renamed from *AlignToPath*). These use
>> a standard setup with property setters and a common *execute()* method to
>> update their settings to the geometry.
>>
>
>>
>> lastly, there have been a smatterig of simple name changes:
>>
>> the *away3d.geom* package has been renamed *away3d.tools*
>>
> *width* has been renamed *thickness* in all wire materials
>> *kerning* has been renamed *letterSpacing* in *TextField3D*
>> the *specular* property in dot3 materials is now a color rather than a
>> number.
>>
>
>
> What this list doesn't include is the amount of internal updates and fixes
> that will hopfully have no affect on you at all. Although as we always say,
> bugs have a habit of slipping through the net so please report any issues
> you are having with code refusing to work, even taking into account all that
> is mentioned above
>
>
> Enjoy the new release!
>
>
> The Away3D Team
>
>
>
> --
> Rob Bateman
> Flash Development & Consultancy
>
> [email protected]
> www.infiniteturtles.co.uk
> www.away3d.com
>



-- 
http://www.derschmale.com


-- 
Subscription settings: http://groups.google.com/group/away3d-dev/subscribe?hl=en

Reply via email to