- 2.3.0:
- Major updates
- Sponza demo
- Support for procedural cube textures Demo here (deltakosh)
- New UniversalCamera which support keyboard, mouse, touch and gamepad (davrous)
- Point lights shadow mapping. Demo here (deltakosh)
- Introducing Materials Library (deltakosh)
- Water material: http://doc.babylonjs.com/extensions/Water. Demo here (julien-moreau)
- Fire material: http://doc.babylonjs.com/extensions/fire. Demo here (julien-moreau)
- Normal material: http://doc.babylonjs.com/extensions/normal (temechon)
- Lava Material: http://doc.babylonjs.com/extensions/lava (temechon)
- PBR Material: http://doc.babylonjs.com/extensions/pbr (deltakosh)
- Fur Material: http://doc.babylonjs.com/extensions/Fur. Demo here (julien-moreau)
- Introducing Procedural textures Library (meulta
- New cache mechanism for StandardMaterial (deltakosh)
- New Solid Particle System Demo here (jerome)
- New
StandardMaterial.lightmapTexture
which can be controlled withStandardMaterial.useLightmapAsShadowMap
(deltakosh) - Support for reflection probes. See documentation here (deltakosh)
- New serializers folder to host .babylon serializers (deltakosh)
- New .obj serializer (BitOfGold)
- Sprites now can be picked and can use actions (deltakosh)
- New
Mesh.CreatePolyhedron()
method (jerome) - New
Mesh.CreateIcoSphere()
method Demo here (G'kar) - Introducing babylon.core.js (deltakosh)
- Introducing AnimationRanges for Skeletons and Animations (deltakosh)
- Support for glTF files loader (julien-moreau)
- Updates
- Audio files are now saved for offline access (davrous)
- New
CubeTexture.CreateFromImages()
(deltakosh) - Bounding info can be locked and updated (
bb.isLocked
andbb.update()
) (deltakosh) - 2D layers now have a scale and offset properties (deltakosh)
- TouchCamera can now fallback to regular mouse/keyboard controls (deltakosh)
- Added ability to skip current prepared Action to next active Action (chained by Action.then(Action)) (vouskprod)
- Added new event triggers
ActionManager.OnLongPressTrigger
andActionManager.OnPickDownTrigger
(vouskprod) - new
Mesh.convertToUnIndexedMesh()
to create meshes with no indices (which could be faster when vertex reuse is low and vertex structure is small) (deltakosh) - Unity3D exporter will recognise instances of prefabs (ozRocker)
- New parse mechanism (for loading .babylon file) (deltakosh)
- New button to log the camera position in the debug layer (temechon)
- Shader files (fragment and vertex) can now be specified via direct URL (vouskprod)
- Added
Animatable.goToFrame()
(deltakosh) - Fixed behavior or
Animation.CreateAndStartAnimation
and addedAnimation.CreateMergeAndStartAnimation
to reproduce previous behavior (deltakosh) - Adding
StandardMaterial.linkEmissiveWithDiffuse
to, well, link emissive with diffuse value. (With)[http://www.babylonjs-playground.com/#2FPUCS#2] and (without)[http://www.babylonjs-playground.com/#2FPUCS#1] (deltakosh) - Adding support for equi-rectangular mapping. See demo here (deltakosh)
- Sprites and particles scheduler updated to be resolved before transparent objects (deltakosh)
- Added ability to deactivate ArcRotateCamera panning mechanism (by setting panningSensibility to 0) (vouskprod)
- Added
DirectionalLight.autoUpdateExtends
to prevent directional lights to adapt to scene extends (deltakosh) - Added a new parameter to
debugLayer.show()
to define root element to use (deltakosh) - New
MeshBuilder
class used to create all kind of mesh shapes (deltakosh) - Added
Scene.constantlyUpdateMeshUnderPointer
to improve performance when moving mouse (deltakosh) - Added
StandardMaterial.disableLighting
(deltakosh) - Improved reflection shader performance (deltakosh)
- New
Material.sideOrientation
property to define clockwise or counter-clockwise faces selection. Demo here (deltakosh) - It is now possible to create a custom loading screen. PR (RaananW)
- Per face color and texture feature in
MeshBuilder.CreateCylinder()
(jerome) - Arc feature in
CreateCylinder
,CreateSphere
,CreateTube
,CreateDisc
andCreateLathe
(jerome) - Slice feature in
MeshBuilder.CreateSphere()
(jerome) closed
parameter inMeshBuilder.CreateLathe()
(jerome)cap
parameter inMeshBuilder.CreateLathe()
(jerome)diameter
,hasRings
,enclose
parameters inMeshBuilder.CreateCreateCylinder()
(jerome)- added
getNormalAtCoordinates()
andgetNormalAtCoordinatesToRef()
methods inMeshBuilder.CreateLathe()
(jerome) Material.dispose()
now removes disposed material from meshes (deltakosh)- New
Material.getBindedMeshes()
function (deltakosh) - OimoJS Plugin now uses Quaternions exclusively and calculates body rotations correctly. PR (RaananW)
- It is now possible to get the physics engine's body and wolrd objects using the physics engine. PR (RaananW)
- new Heightmap Impostor for Cannon.js physics engine. PR, [Demo] (http://www.babylonjs-playground.com/#D3LQD#3) (RaananW)
- A plane mesh can be created with a source plane (math). PR (RaananW)
- AbstractMesh.onPhysicsCollide will be triggered when a physics-enabled mesh collides against another. PR (RaananW)
- Added scene onPointerMove public callback. PR (RaananW)
- Added streaming support for BABYLON.Sound (davrous)
- Added collisionsEnabled and workerCollisions for serialization PR (Dad72)
- Changed from a fixed maximum of bone influencers, 4, to variable, 1-8 (Palmer-JC)
- Support for added to Blender Exporter (Palmer-JC)
- Float32Arrays can now directly be specified for vertex data attributes,
Mesh.updateVerticesDataDirectly
deprecated (Palmer-JC) - Added panning axis to the ArcRotateCamera PR (mstdokumaci, RaananW)
- Added
Tmp
class for internal use in order to improvement the memory management, jerome) - Added
Scene.swithActiveCamera(newCamera, attachControl)
to go from one camera active to another. (dad72) PR
- Bug fixes
- Fixed IDB for offline support (davrous)
- Fixed a bug with spherical mapping (deltakosh)
- Fixed a bug with clone and createInstance which was forcing the recomputation of bounding boxes (deltakosh)
- Fixed a bug with CSG when submeshes are kept (deltakosh)
- Fixed a bug with texture coordinates matrices (deltakosh)
- Fixed Sphere texture coordinates generation (deltakosh)
- Fixed a bug with
Mesh.attachToBone
when bone's matrix has a negative determinant (deltakosh) - Fixed a possible but with the active camera while taking a screenshot. PR (RaananW)
- Fixed a bug with worker-collisions and instances. PR (RaananW)
- Fixed a bug with removed meshes and geometries from the worker-cache. PR (RaananW)
- Fixed
getHeightAtCoordinates()
: brand new ultra fast algorithm, can be used for many objects at once in the render loop now (jerome) - Fixed
closePath
andcloseArray
ribbon parameter now working back together (jerome) - Fixed morphing on capped tubes (jerome)
- Fixed morphing on extruded shapes (jerome)
- Fixed tube and extruded shape cap light artifact (jerome)
- Fixed lathe light artifact with dedicated new geometry (jerome)
- Fixed a bug calculating velocity during collision with gravity enabled. PR (RaananW)
- Fixed a bug in instance serialization. PR (RaananW)
- Fixed a memory leak with textures (deltakosh)
- Breaking changes
ActionManager.OnPickTrigger
now acts as a single click/tap and is not raised on drag or swipe anymore. To get the old behavior,ActionManager.OnPickDownTrigger
should be used instead (vouskprod)VertexData.CreateCylinder()
now supports only the single options parameter (jerome)VertexData.CreateRibbon()
now supports only the single options parameter (jerome)VertexData.CreateBox()
now supports only the single options parameter (jerome)VertexData.CreateSphere)
now supports only the single options parameter (jerome)VertexData.CreateTorus()
now supports only the single options parameter (jerome)VertexData.CreateTorusKnot()
now supports only the single options parameter (jerome)VertexData.CreatePlane()
now supports only the single options parameter (jerome)VertexData.CreateDisc()
now supports only the single options parameter (jerome)VertexData.CreateLines()
now supports only the single options parameter (jerome)VertexData.CreateDashedLines()
now supports only the single options parameter (jerome)VertexData.CreateGround()
now supports only the single options parameter (jerome)VertexData.CreateTiledGround()
now supports only the single options parameter (jerome)VertexData.CreateGroundFromHeightMap()
now supports only the single options parameter (deltakosh)Tools.IsExponantOfTwo()
renamed toTools.IsExponentOfTwo()
(deltakosh)Tools.GetExponantOfTwo()
renamed toTools.GetExponentOfTwo()
(deltakosh)- Updated Cannon.js plugin to the newest version (0.6.2). New cannon.js must be used. PR (RaananW)
- Major updates