what's new.md 5.4 KB

  • 2.4.0:

    • Major updates
    • New refraction channel for Standard material (including fresnel support). Refraction texture can be provided by a reflection probe or a refraction texture. See demo here (deltakosh)
    • Added support for HDR cubemaps (sebavan)
    • Support for shaders includes (deltakosh)
    • new mesh type : LineSystem (jerome)
    • SerializationHelper for complex classes using TypeScript decorators (deltakosh)
    • StandardMaterial now supports Parallax and Parallax Occlusion Mapping (nockawa)
    • Animations blending. See demo here. More info here (deltakosh)
    • New debuger tool: SkeletonViewer. See demo here (Adam & deltakosh)
    • Added Camera Inputs Manager to manage camera inputs (mouse, touch, keyboard, gamepad, ...) in a composable way, without relying on class inheritance gleborgne
    • Introduced new observable system to handle events (nockawa, deltakosh)
    • Added a new VR camera : VRDeviceOrientationArcRotateCamera temechon
    • Unity3D exporter: Added support for lightmaps (davrous, deltakosh)
    • Unity3D exporter: Added support for export and run (local webserver) (davrous, deltakosh)
    • Moved PBR Material to core (deltakosh)
    • Updates
    • Added postprocess.enablePixelPerfectMode to avoid texture scaling/stretching when dealing with non-power of 2 resolutions. cannot be used on post-processes chain (deltakosh)
    • Added skeleton.getBoneIndexByName(boneName: string) dad72
    • Added node._children to track children hierarchy (deltakosh)
    • Added Camera.ForceAttachControlToAlwaysPreventDefault to help embedding Babylon.js in iFrames (deltakosh)
    • Support for Layer.alphaTest (deltakosh)
    • New scene.pointerDownPredicate, scene.pointerMovePredicate, scene.pointerUpPredicate to define your own predicates for meshes picking selection (deltakosh)
    • New OnPickTrigger support for spritesManager (deltakosh)
    • New SPS method digest() (jerome)
    • New SPS property computeBoundingBox (jerome)
    • Added a new OnPickOut trigger fired when you release the pointer button outside of a mesh or sprite. (deltakosh)
    • Added support for OnPointerOver and OnPointerOut for sprites. (deltakosh)
    • Added an optional predicate on Node.getDescendants, Node.getChildren to filter out Nodes based on a callback execution. (nockawa)
    • Added Ray.intersectionPlane & intersectionSegment. (nockawa)
    • LinesMesh class now supports Intersection. Added the intersectionThreshold property to set a tolerance margin during intersection with wire lines. (nockawa)
    • Geometry.boundingBias property to enlarge the boundingInfo objects (nockawa)
    • Tools.ExtractMinAndMax & ExtractMinAndMaxIndexed now supports an optional Bias for Extent computation.
    • Added StringDictionary class to implement an efficient generic typed string dictionary based on Javascript associative array. (nockawa)
    • Added RectanglePackingMap class to fix several rectangles in a big map in the most optimal way. (nockawa)
    • Scene.onPointerObservable property added to enable a unique Observable event for user input (see ArcRotateCamera inputs for examples) (nockawa)

    • API doc

    • class SolidParticleSystem documented (jerome)

    • class MeshBuilder documented (jerome)

    • class Mesh documented (jerome)

    • Bug fixes

    • Fixed bug with billboards and parenting (deltakosh)

    • Fixed bug with ArcRotateCamera.setTarget (deltakosh)

    • Fixed bug with OBJ Loader - All meshes were concatenated with the previous one (Temechon)

    • Breaking changes

    • VertexData.CreateLines() removed as MeshBuilder.CreateLines() now calls MeshBuilder.CreateLineSystem()

    • scene.onNewXXXAdded and scene.onXXXRemoved' callbacks were removed and replaced byscene.onNewXXXAddedObservableandscene.onXXXRemovedObservable`

    • Material.dispose does not dispose textures by default. You have to call material.dispose(false, true) to get the previous behavior.