Babylon.js v2.0

Discussion in 'Live RSS Feeds' started by News, Feb 25, 2015.

  1. News

    News Extraordinary Robot
    News Feed

    Jun 27, 2006
    Likes Received:
    Just saw the news that one of our favorite libs, Babylon.js has reached a new major milestone, v2.0!

    Big updates to Babylon.js 2.0


    Major updates

    • Support for WebAudio. More info here (davrous)
    • Support for Procedural Texture with standard usable samples and custom support. More info here (meulta)
    • Support for OES_element_index_uint extension in order to support 32 bits indices and then meshes with more than 65536 vertices (deltakosh)
    • Support for levels of detail (LOD) for meshes. More info here (deltakosh)
    • New Scene Optimizer tool. More here (deltakosh)
    • Support for user marks (deltakosh)
    • Using High Resolution Time for performance and FPS measurement (deltakosh)
    • Easing functions for animations. More info here (mimetis)
    • New debug layer than can be used to display debug informations. More info here(deltakosh)
    • New PolygonMeshBuilder object used to create mesh from polygons (ElemarJR)
    • New Mesh.simplify() function to automatically simplify meshes. More info here(raananw)
    • New scene.enableDepthRenderer() to register depth texture rendering. More info here(deltakosh)
    • New SSAORenderingPipeline to apply screen space ambient occlusion. More info here(julien-moreau)
    • New VolumetricLightScatteringPostProcess to simulate volumetric light scattering. More info here (julien-moreau)
    • 3dsMax exporter can now generate binary format files (deltakosh)
    What’s new in Babylon.js v2.0

    Well, a lot of things are new actually. You can find the complete “What’s new” here but I would like to take some time with you to showcase a few of the cool stuff that we cooked with love for you.

    But before digging into these features, please let me share with you the fantastic demo that Michel Rousseau did for Babylon.js v2.0:



    We added some interesting tools to help web developers debug or optimize their scenes. One of these tools is the debug layer. When activated, it will give you a lot of great information about the current scene. It allows you to enable/disable specific features of the engine and provides performance counters as well.


    Special effects

    Creating awesome visual effects is one of my biggest pleasure when I work with a 3D engine. However, a specific option was missing from Babylon.js to allow a huge variety of these effects: the DepthRenderer. Now with Babylon.js v2.0 we introduced a way for post process to read the depth buffer. This is why we were able to also ship the following effects:


    Rendering optimizations

    To allow you to create always more complex scenes, we added support for LOD (Level of Detail). This feature can select different mesh quality based on the distance to the viewer. And obviously this works well with hardware instancing:


    New documentation site

    We were previously using the wiki feature of GitHub to host our documentation. But some features were missing (control over display, documentation generation from TypeScript code, better rights managements, etc..).

    With babylon.js v2.0, we also shipped our new documentation site: This site is community based as well because anyone can suggest a new page or revisions to any existing page. You can even add comments to API documentation (which obviously will be keep every time we will have to regenerate the API documentation).

    And this is just the beginning

    The complete change log will give you more insights about all the great stuff we added to Babylon.js.

    I would like as well to thank a lot the community that works with us on this engine. Thank to them we added far more features that expected in this release. You guys rock!!!

    What is Babylon.js?


    Babylon.js is a 3D engine based on webgl and javascript. It supports the following features:
    • Complete scene graph with lights, cameras, materials and meshes
    • Collisions engine
    • Physics engine (thanks to cannon.js)
    • Scene picking
    • Antialiasing
    • Animations engine
    • Particles Systems
    • Sprites and 2D layers
    • Optimizations engines:
      • Frustum clipping
      • Sub-meshes clipping
      • Hardware scaling
      • Selection octrees
      • Offline mode (Assets are saved locally to prevent reloading them)
      • Incremental loading
      • Binary compressed format
      • Hardware accelerated instances
    • Standard material is a per pixel material that supports:
      • Diffuse lightning and texture
      • Ambient lightning and texture
      • Specular lightning
      • Opacity texture
      • Reflection texture (Spheric, planar, cubic and projection)
      • Mirror texture
      • Emissive texture
      • Specular texture
      • Bump texture
      • Up to 4 lights (points, directionals, spots, hemispherics)
      • Custom materials
      • Skybox
      • Vertex color
      • 4 bones per vertex
      • Fresnel term for diffuse, opacity, emissive and reflection
    • Special FX
      • Fog
      • Alpha blending
      • Alpha testing
      • Billboarding
      • Fullscreen mode
      • Shadow Maps and Variance Shadow Maps
      • Rendering layers
      • Post-processes (blur, refraction, black'n'white, fxaa, customs...)
      • Lens flares
      • Multi-views
    • Textures:
      • Render target textures
      • Dynamic textures (canvas)
      • Video textures
      • Compressed (DDS) textures
    • Cameras:
      • Arc rotate camera
      • Free camera
      • Touch camera
      • Virtual Joysticks camera
      • Oculus Rift camera
      • Gamepad camera
      • VR Device Oriention camera
      • WebVR camera
      • Follow camera
    • Meshes:
      • Mesh cloning
      • Dynamic meshes
      • Height maps
      • Bones
      • Constructive solid geometries
    • Import:
      • Babylon scene file can be converted from .OBJ, .FBX, .MXB
      • Exporter for Blender
      • Exporter for Cheetah3d
      • Exporter for 3ds max
      • Support for drag'n'drop
      • Assets manager
      Babylon.js team

      Lead developer: David CATUHE (@deltakosh)
      Developer: David ROUSSET (@davrous)
      Developer: Pierre LAGARDE (@pierlag)
      3D Artist: Michel ROUSSEAU (@rousseau_michel)
      Hill Valley scene: Camille JOLY and Enozone
      Train scene: Romuald ROUHIER and Progiss


    If you are WebGL'ing, you need to be Babylon.js'ing...

    Related posts you might find interesting;

    Follow @CH9
    Follow @coding4fun
    Follow @gduncan411


    Continue reading...

Share This Page