what's new.md 32 KB

Changes list

  • 1.14.0:
    • Major updates
    • New VRDeviceOrientionCamera for cardboard like systems (demonixis)
    • New WebVRCamera for WebVR compatible systems (demonixis)
    • All shaders now use high precision profile to address iOS8 compatibility (deltakosh)
    • New camera: BABYLON.FollowCamera used to smoothly follow a given target abogartz
    • New BABYLON.AssetsManager used to handle assets loading alongside loading screen display (deltakosh)
    • New Engine.displayLoadingUI(), Engine.hideLoadingUI(), Engine.loadingUiText. See more here (deltakosh)
    • New cache engine (Based on state objects) (deltakosh)
    • Fresnel support for diffuse, emissive, opacity and reflection on StandardMaterial. See demo here and wiki here (deltakosh)
    • TypeScript declaration file is now available (deltakosh)
    • Binary file format supported. You can use online converter here (r2d2Proton)
    • Updates
    • New mesh.updateVerticesDataDirectly(kind, float32array) to update mesh data directly (deltakosh)
    • Sandbox & IndexedDB layer are now supporting TGA & DDS textures (davrous)
    • Integrating lights animations, cameras type and animations for Blender exporter (Palmer-JC)
    • New "Get zip" option for CYOS (deltakosh)
    • Add pinch and zoom for iOS and Android on ArcRotateCamera (Eucly2)
    • New camera.projectToScreen() function to transform a vector3 into a screen pixel (deltakosh)
    • New effect parameter to define custom shader for BABYLON.ParticleSystem constructor. See demo here and wiki here (deltakosh)
    • Added toEulerAnglesToRef and CopyFromFloats to Quaternion (Demonixis)
    • Added function to calculate the inverse of a quaternion (Daner)
    • New StandardMaterial.useSpecularOverAlpha to define if you want specular to appear even on top of transparent surfaces (deltakosh)
    • New SceneLoader.Append function to append a babylon.js file to an existing scene (Palmer-JC)
    • New LinesMesh.alpha property (deltakosh)
    • Adding instances exportation support for 3DSMax exporter (deltakosh)
    • New Mesh.applyDisplacementMap and Mesh.applyDisplacementMapFromBuffer (deltakosh)
    • New Mesh.renderOutline property to render outlines around a mesh (used with Mesh.outlineColor and Mesh.outlineWidth) (deltakosh)
    • New Light.includedOnlyMeshes array to define explicitely which mesh is affected by a light (deltakosh)
    • Added multiply and divide functions to Vector2 (daner)
    • New feature demo for custom render target texture (deltakosh)
    • RenderTargetTexture can now specify a camera to use (deltakosh)
    • Updates
    • Fixing tons of bugs with PostProcessRenderPipeline. Wiki updated. (deltakosh)
  • 1.13.0:
    • Major updates
    • TypeScript port finished (davrous & deltakosh)
    • Physics engine: new OIMO plugin (temechon)
    • New demo: V8 engine (Michel Rousseau)
    • Updates
    • Fixed ray creation when the devicePixelRatio is not equals to 1 (demonixis)
    • New mesh.registerAfterRender and mesh.unregisterAfterRender functions (deltakosh)
    • New fragmentElement parameter to define custom shader for BABYLON.ParticleSystem constructor (deltakosh)
    • New OnKeyDown and OnKeyUp triggers. See actions wiki for more info (deltakosh)
    • ArcRotateCamera can now check collisions wiki (deltakosh)
    • New Engine.Version property which returns a string with the current version (deltakosh)
    • New "Export and Run" feature for Max2Babylon (deltakosh)
    • Animations delta time is now capped between Scene.MinDeltaTime and Scene.MaxDeltaTime (deltakosh)
    • Non-squared DDS are now supported (deltakosh)
    • New triggers: BABYLON.ActionManager.OnIntersectionEnterTrigger, BABYLON.ActionManager.OnIntersectionExitTrigger. Documentation updated (deltakosh)
    • New mesh type: BABYLON.LinesMesh. You can find a demo here (deltakosh)
    • New mesh.moveWithCollisions function. Used with mesh.ellipsoid and '''mesh.ellipsoidOffset```, this function can be used to move a mesh and use an ellipsoid around it to check collisions (deltakosh)
    • New feature demo: How to do drag'n'drop (deltakosh)
    • New BABYLON.PickingInfo.getTextureCoordinates() function (deltakosh)
    • New BABYLON.Scene.cameraToUseForPointers property that defines this parameter if you are using multiple cameras and you want to specify which one should be used for pointer position (deltakosh)
    • BABYLON.OculusOrientedCamera was replaced by BABYLON.OculusCamera for better integration into camera system (deltakosh)
    • New Mesh.CreateTiledGround() function (kostar111)
    • Shadow Poisson Sampling (clementlevasseur)
    • Bugfixes
    • Fixing a bug when instances are used with a mesh with submeshes.length > 1 (deltakosh)
    • CreateCylinder() : add subdivisions parameter and fix normals bug (kostar111)
  • 1.12.0:
    • Major updates
    • Babylon.js is now entirely developed using TypeScript (deltakosh, davrous)
    • Physics plugins: You can add your own physics engine to Babylon.js. More info here. Cannon.js is the first supported plugin (deltakosh)
    • BABYLON.Action: You can now create a complex system of interactions. More info here (deltakosh)
    • Babylon.js Playground: Experiment and learn Babylon.js using the playground (deltakosh)
    • Geometry system (gwenael-hagenmuller)
    • Support for TGA textures based on Vincent Thibault work (deltakosh)
    • BABYLON.Gamepads & BABYLON.Gamepad: Support for Gamepad API (Xbox 360 Pad & Generic Pads) (davrous)
    • BABYLON.GamepadCamera: use a FPS-like camera controlled by your gamepad using 1 line of code (davrous)
    • Hardware accelerated instances used to render identical meshes. More info here (deltakosh)
    • New BABYLON.GroundMesh created by BABYLON.Mesh.Createground and BABYLON.Mesh.CreateGroundFromHeightMap. This object is optimized for collisions and rendering of grounds (!!!). A first feature is also included GroundMesh.getHeightAtCoordinates (deltakosh)
    • Beta: New exporter for 3ds Max 2013+ (deltakosh)
    • Updates
    • DDS: Support for RGB, Luminance and cube file format (deltakosh)
    • New LensFlareSystem.isEnabled property (deltakosh)
    • New samplingMode parameter when creating textures (deltakosh)
    • Blender: changed object.isVisible to reflect the corresponding param in Blender (vousk)
    • New properties: scene.meshUnderPointer, scene.pointerX, scene.pointerY (deltakosh)
    • Added "layerMask" property to meshes and cameras (marcolebdech)
    • New Mesh.showSubMeshesBoundingBox to display sbumeshes bounding boxes (deltakosh)
    • Octree are now more generics and used to optimize rendering, collisions and picking. More info (deltakosh)
    • Shadows now support alpha testing (deltakosh)
    • New feature demo: particles (deltakosh)
    • New renderTargetTexture.refreshRate property to define the refresh rate of RenderTargetTexture: Use 0 to render just once, 1 to render on every frame, 2 to render every two frames and so on... (deltakosh)
    • New scene.beforeCameraRender and scene.afterCameraRender callbacks (deltakosh)
    • New custom functions for ParticleSystem: startDirectionFunction and startPositionFunction (deltakosh)
    • useAlphaFromDiffuseTexture option for standard material to use 8-it alpha channel from the diffuse texture instead of using it as an alpha test value (Platane)
    • New Tools.Log, Tools.Warn, Tools.Error functions. Filter can be applied using Tools.CurrentLoglevel (MaxenceBrasselet, deltakosh)
    • Using grunt-contrib-uglify to reduce babylon.js size (from 500KB to 384KB) (deltakosh)
    • setDirectionToTarget function added to SpotLight, HemisphericLight and DirectionalLight (Wingnutt)
    • Picking now takes viewport in account (deltakosh)
    • Point lights and spot lights now have a range (deltakosh)
    • Color3 interpolator for animations (deltakosh)
    • New function: VertexData.CreateGroundFromHeightMap(deltakosh)
    • New function: Tools.CreateScreenshot(nicolas-obre)
    • Bugfixes
    • Fixing ArcRotateCamera.setPosition() (Celian)
    • RenderTarget crashed when used with incremental engine (deltakosh)
    • Depth clear is now more controlled (Mainly for Ejecta) (deltakosh)
    • Fixed a bug with ratio when using RenderTargetTexture deltakosh)
    • Fixed a bug in the sandbox tool (davrous)
    • Fixed a bug with skybox seams holcombj)
    • Moved mousewheel event from window to canvas deltakosh)
    • Fixed matricesIndices serialization (gwenael-hagenmuller)
    • Bug fix and GC optimisation on CSG (clementlevasseur)
    • Breaking changes
    • Mesh.setVerticesData signature is now: (kind, values, updatable) instead of (values, kind, updatable) in order to be consistent with Mesh.updateVerticesData deltakosh)
  • 1.11.0:
    • Major updates
    • New option for mesh: mesh.showBoundingBox to display mesh's bounding box. You can configure back and front color using scene.getBoundingBoxRenderer(). This function returns a BABYLON.BoundingBoxRenderer where you can define backColor, frontColor and showBackLines (deltakosh)
    • New basic mesh: BABYLON.Mesh.CreateTorusKnot (deltakosh)
    • New BABYLON.AnaglyphArcRotateCamera and BABYLON.AnaglyphFreeCamera (michael-korbas), (deltakosh)
    • Tags system (gwenael-hagenmuller)
    • New render pipeline system for post-processes. See documentation here (michael-korbas)
    • Updates
    • Added parameters to enable or disable a type of texture on all BABYLON.StandardMaterial (demonixis)
    • New BABYLON.VertexData.ExtractFromMesh function (deltakosh)
    • Cameras can now have sub-cameras (see BABYLON.AnaglyphArcRotateCamera for example) (deltakosh)
    • New BABYLON.Engine.runEvenInBackground property. True by default. It allows you to stop rendering when the browser is not the foreground application. (deltakosh)
    • Darkness of a shadow + shadow on transparent meshes (clementlevasseur)
    • New event for materials: onCompiled and onError (deltakosh)
    • Bugfixes
    • Fixed a bug with collisions cache
    • Fixed a bug with mesh.dispose when called twice (deltakosh)
    • Fixed an issue with Internet Explorer while rendering a RenderTargetTexture outside the engine renderLoop (nicolas-obre)
    • *New demos
    • CYOS
  • 1.10.0:
  • 1.9.0:
    • Major updates
    • Beta support for scene serialization with BABYLON.SceneSerializer.Serialize function (deltakosh)
    • Blender exporter now supports 32 bits indices (deltakosh)
    • Flat shading support (From Blender and with `mesh.convertToFlatShadedMesh()) (deltakosh)
    • Updates
    • New mesh.rotate and mesh.translate functions to rotate and translate mesh both locally and globally (deltakosh)
    • New feature for particles: ParticleSystem.forceDepthWrite (deltakosh)
    • Adding a new parameter to pick in order to be able to pick even on multi views (deltakosh)
    • New mesh.lookAt function (professorF)
    • New postprocess system (independent from cameras) (michael-korbas)
    • New mesh.setAbsolutePosition function (gwenael-hagenmuller)
    • Bugfixes
    • Fixing issue with mesh.infiniteDistance (deltakosh)
    • Fixing issue with camera caches (deltakosh)
    • Fixing issue with aspect ratio (deltakosh)
    • Fixing arcRotateCamera angle limitations (deltakosh)
    • Fixing a bug with multi-views: depth buffer was not clear between different passes (deltakosh)
  • 1.8.5:
    • Major updates
    • Visual Studio 2013 templates for Windows 8.1 and nuget packages (pierlag)
    • Updates
    • New matrix.multiply function (up to 50% faster) (deltakosh)
    • New matrices cache system for camera (view and projection matrices) (juliengobin)
    • New physics impostor: compound and mesh (still really slow) (deltakosh)
    • Set crossOrigin flag for support CORS (vbouzon)
    • XNA importer: Changes for Right-Left Coordinate Systems & Prefixed Mesh Parts with Mesh Name (professorF)
    • Fixing getPivotMatrix (gwenael-hagenmuller)
    • New geometry functions: getLocalTranslation, setPositionWithLocalVector, getPositionExpressedInLocalSpace,locallyTranslate (gwenael-hagenmuller)
    • Adding multi mesh import from same file(nicolas-obre)
    • Bugfixes
    • Fixing issue when disposing a parent and not its children (deltakosh)
    • Fixing .obj importer (deltakosh)
    • Added guardband checks for impostors' size (deltakosh)
  • 1.8.0:
    • Major updates
    • Support for physics engine thanks to cannon.js (deltakosh)
    • New sandbox tool (davrous)
    • Updates
    • New animation.currentFrame property to get current animation frame (deltakosh)
    • New animation.floatInterpolateFunction property to define custom float interpolation function (deltakosh)
    • New animation.vector3InterpolateFunction property to define custom vector3 interpolation function (deltakosh)
    • New animation.quaternionInterpolateFunction property to define custom quaternion interpolation function (deltakosh)
  • 1.7.3:
    • Updates
    • Support for "file://" moniker (davrous)
    • Support for DAE (COLLADA) file format (gwenael-hagenmuller)
    • Support for "empty" object type in Blender exporter (deltakosh)
    • Bugfixes
    • "use strict" is no more included in minified version (deltakosh)
    • Fixing a bug with MSGesture with IE11 on Windows 7 (deltakosh)
  • 1.7.0:
    • Major updates
    • Support for lens flares (deltakosh)
    • Support for multi-views (deltakosh)
    • Updates
    • New light.excludedMeshes property to exclude specific meshes from light computation (deltakosh)
    • New texture.anisotropicFilteringLevel property to define the anisotropic level of a texture (deltakosh)
    • New mesh.infiniteDistance property to make a mesh static from the point of view of the camera (deltakosh)
    • New scene.customRenderTargets property to add our own renderTargetTexture (deltakosh)
    • Transparent meshes are sorted back to front (deltakosh)
    • Bugfixes
    • Fixing a bug when cloning mirrorTexture (deltakosh)
  • 1.6.0:
  • 1.5.3:
    • Updates
    • New lockedTarget for freeCamera in order to allow cameras to track moving targets (deltakosh)
    • Cameras now supports animations (see http://www.babylonjs.com/index.html?TRAIN) (deltakosh)
    • New angularSensibility property for cameras (deltakosh)
    • New upVector property for cameras. Cameras are now not limited to a (0, 1, 0) up vector (deltakosh)
    • New parent property for cameras and lights: Lights, cameras and meshes can be related. For instance a camera can now be attached to a mesh as child and vice versa (deltakosh)
    • Bugfixes
    • Fixing a bug when exporting materials from Blender (deltakosh)
    • Fixing an issue with IE11 for RT (deltakosh)
    • Fixing an issue with looping animations (deltakosh)
  • 1.5.2:
    • Updates
    • New renderingGroupId for SpriteManager (deltakosh)
    • BoundingBox and BoundingSphere are prepared with an identity matrix during construction (deltakosh)
    • Bugfixes
    • Fixing a bug preventing wireframe to be displayed (deltakosh)
    • Fixing an issue with last IE update (deltakosh)
  • 1.5.1:
    • Updates
    • Massive update of typescript files (jroblak)
    • Bugfixes
    • Fixing an issue with SceneLoader.ImportMesh (nicolas-obre)
    • Fixing an issue with sprites rendering when no mesh is present (deltakosh)
  • 1.5.0:
    • Major updates
    • New DeviceOrientationCamera that supports W3C DeviceOrientations events (deltakosh)
    • Incremental loading support for meshes and textures (deltakosh)
    • New API online page to convert .babylon files to .incremental.babylon files (pierlag)
    • New mesh.renderingGroupId and particleSystem.renderingGroupId properties to support rendering layers (deltakosh)
    • Updates
    • New predicate parameter for scene.pick function in order to be able to select pickable meshes (deltakosh)
    • New mesh.refreshBoundingInfo() method (deltakosh)
    • New onAnimationEnd parameter for animations (deltakosh)
  • 1.4.3:
    • Updates
    • New mesh.setLocalTranslation and mesh.getLocalTranslation functions (deltakosh)
    • New matrix.setTranslation function (deltakosh)
    • mesh.rotation and mesh.rotationQuaternion are now two separated functions (deltakosh)
  • 1.4.2:
    • Bugfixes
    • Fixing an issue with scene.executeWhenReady (deltakosh)
  • 1.4.1:
  • 1.4.0:
    • Major features
    • Bones support (deltakosh). Bones and animated bones are now supported. They can cast shadows. Bones can be exported from Blender or from FBX
    • Offline support (davrous. You can specify to offline assets (scene and textures) to a local IndexedDB. Assets are then loaded once until you change the version on a server-side manifest
    • N-Level octrees (deltakosh):
    • Updates
    • Adding dispose() function and a disposeWhenFinishedAnimating property to sprites (Cyle)
    • Adding a applyTransform() function to meshes in order to bake a specific transformation into vertices (deltakosh)
    • Adding setPivotMatrix() and getPivotMatrix() to meshes to define pivot matrix (deltakosh)
    • Mesh.CreateCylinder now takes two diameters as parameters to be able to create cone (deltakosh)
    • New material.Clone function (deltakosh)
    • Bugfixes
    • scene.IsReady() is more robust now and can be used to detect when the scene is EFFECTIVELY ready :) (deltakosh)
    • Fixing animations timing. Animations should be in sync now (deltakosh)
    • Fixing a bug with orthographic camera (deltakosh)
    • Fixing a bug with attachControl() function (deltakosh)
    • Fixing a bug with scene.pick() function (deltakosh)
  • 1.3.2:
    • Fixing a bug with camera.detachControl
  • 1.3.0:
    • Selection octrees
    • Breaking changes: Meshes now use multi vertex buffers (one for each attribute) instead of a big one. This is for more flexibility. The .babylon file format has changed accordingly (no more .vertices property on meshes but .positions, .normals, .colors, .uvs, .uvs2)
  • 1.2.1:
    • Support for PointerLock ()
    • StandardMaterial now supports per-vertex color
    • Blender exporter supports per-vertex color
  • 1.2.0:
    • Major rework of the API to remove GC pressure.
    • FreeCamera: Support for QWERTY keyboards
    • New 3D charting demo
  • 1.1.0:
    • Shadow Maps and Variance Shadow Maps
    • Shadows Maps and animations are now exported from Blender
    • Hand.js is no longer required for ArcRotateCamera
    • ArcRotateCamera support pinch/zoom gesture on IE
  • 1.0.10:
    • Using typed arrays for Matrix
    • Improving IE11 support
    • Support for new mesh primitives : Torus and cylinder
  • 1.0.9:
    • Orthographic camera
  • 1.0.8:
    • Adding keyboard support to ArcRotateCamera
    • Starting to use git tag
  • 1.0.7:
    • New demo: Worldmonger
    • Improved IE shaders
  • 1.0.6:
    • Dynamic meshes
    • Skybox
    • Support for high-DPI displays
    • Height maps
  • 1.0.5:
    • Adding color tint for sprites and layers
  • 1.0.4:
    • Various optimizations
    • Fog
    • TypeScript support
  • 1.0.3:
    • Video textures
    • Normal map (bump)
  • 1.0.2:
    • Spot lights
    • Hemispheric lights