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
