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 -- Subscription settings: http://groups.google.com/group/away3d-dev/subscribe?hl=en
