3

Babylon.js: Powerful, Beautiful, Simple, Open - Web-Based 3D At Its Best

 1 year ago
source link: https://www.babylonjs.com/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

Welcome to Babylon.js 6.0

Our mission is to build one of the most powerful, beautiful, simple, and open web rendering engines in the world, and we are excited to announce the next step forward in that journey: the release of Babylon.js 6.0. This new version brings a smorgasbord of performance improvements, rendering enhancements, and exciting new features that you will NOT want to miss.

New Physics Plugin from the Havok Team

The Havok team is bringing some of their most advanced features to Babylon.js through a special new WASM plugin partnered with a complete overhaul of the Babylon.js Physics API. Working together, they elevate Babylon.js physics to a whole new level. With exciting new physics capabilities and up to 20x faster performance, there's never been a better time to dive into physics in Babylon.js!

havok_logo_reversed.svg
A speedometer graphic showing with the needle near 120 and showing the unit FPS at the bottom

Performance Priority Modes

Power and performance are at the heart of Babylon.js and version 6.0 knocks the socks off performance with all new Performance Priority Modes that produce up to 50x faster rendering and performance! These new modes give developers new control over dialing up the performance of their experience by choosing between Backwards Compatibility Mode, Intermediate Mode, or Aggressive Mode. Choosing between these 3 different modes gives you varying levels of functionality and flexibility.

Fluid Rendering

With Babylon.js 6.0, you can now render fluids! This unlocks some truly breathtaking imagery right in the browser, running at 60fps!

A container of water splashing around
A robot posing with arms outstretched on a smooth surface which is reflecting the image of the robot.

Improved Screen Space Reflections

Beautiful rendering advancements don't stop there, however. This new version of Babylon.js also brings a completely updated screen space reflection model, allowing you to render stunning reflections throughout your scene with the highest performance levels possible!

Texture Decals

One of the hallmarks of a powerful rendering feature set is the ability to be flexible. Babylon.js 6.0 extends the flexibility of working with materials by adding a new Texture Decals feature. Texture Decals allow you to project a decal through a mesh's UV space to be overlaid on the material's texture. This unlocks some fun new interaction possibilities for truly immersive web experiences without sacrificing performance!

A sphere made of old and broken brick with spray painted dots of various colors with paint running down the brick from them and a graffiti tag of a letter B painted on it.
A 3D render of a lamp with an iridescent glass material making up a sphere for the lamp body and a grey shade with a shiny reflective interior.

New glTF Extensions Support

Enabling the most beautiful rendering on the web is an effort that is always evolving. With Babylon.js 6.0 we continue our quest to support the absolute latest advancements in rendering through exciting new glTF extensions. With this latest release, Babylon.js now fully supports the KHR_materials_iridescence and KHR_animation_pointer glTF extensions.

Node Material Ray Marching

One of the most used features in Babylon.js is the Node Material. This advanced material type allows you to create incredibly complicated and interactive shaders without writing a single line of code! With Babylon.js 6.0 we've done a lot of plumbing under the hood to make it more powerful than ever. With this work it is now possible for developers to build more advanced 3D Graphics techniques into Node Material shaders including things like Ray Marching.

A node graph block showing Ray Marching as the header with inputs for world position, camera position, time, and world matrix. The ouputs on the block are world position, and world normal.
A 3D model of a sphere morphed with a cube with a texture projected on the surface that has rootlike patterns and an iridescent sheen.

New Tri-Planar and Bi-Planar Nodes

With Babylon.js 6.0, we've also added two exciting new nodes to the Node Material. The new Tri-planar Projection node allows you to project textures onto 3D objects regardless of the mesh UVs. It uses three separate 2D texture projections, one for each axis, and blends them together to create a material without seams. In addition to the Tri-planar node, we've also added a Bi-planar node. It works in a similar way using two 2D textures instead of three, saving GPU calculations and ultimately leading to seamless textures with a smaller hit to performance.

GUI Editor v1

In Babylon.js 5.0 we introduced a GUI Editor Beta, giving you access to a far simpler way to create complex GUI designs for your Babylon scenes. With Babylon.js 6.0, the GUI Editor officially comes out of Beta with the release of version 1! This version builds on the Beta with a ton of stability improvements and bug fixes, but most importantly introduces a tighter connection to your Babylon.js playgrounds. Make a change in the GUI Editor, see it update instantly in your linked scene.

guieditorv1.jpg
Figma logo on the left of an arrow pointing to the Babylon.js logo on the right.

Figma to Babylon.js Community Extension

One of the most exciting parts about making open-source software is the incredible community of contributors that roll up their sleeves to help improve and extend it, making it more powerful and beneficial for everyone! With Babylon.js 6.0, we are incredibly grateful to welcome a brand new community extension from James Simonson that allows you to export Figma GUI designs directly into Babylon.js scenes!

Accessibility Screen Reader Support

With Babylon.js 6.0, we are thrilled to announce that the core Babylon.js scene tree is now visible to screen readers. Thanks to the incredible work from Sunny, this advancement means that your favorite accessibility screen reader can now narrate scene elements and text to describe the scene to the user. It's our sincere hope that this addition will make it significantly easier for developers to create Babylon.js scenes that are more accessible for everyone and especially for visually impaired people across the web.

An icon of a monitor with a speaker projecting sound waves in the center of the screen.
Babylon.js logo with documentation graphic.

Reorganized Documentation

With a platform as feature-rich and advanced as Babylon, helping people learn how to use it is critically important. We've listened closely to our community over the past year to restructure the organization of Babylon.js documentation with Babylon.js 6.0. This new organization restructures the same great information in a way that's more accessible to two core learning paths: those that want to first learn about Babylon.js and its feature set, and those that want to first understand how to integrate Babylon.js into their existing web applications. While there are many different types of learning objectives out there, these two paths represent the majority of new Babylon.js learners and this new documentation structure will better set them up for success as they begin their learning journey in the wonderful world of Babylon.js.

Just the Tip of the Iceberg

We don't take it lightly when we say that Babylon.js is fully-featured. Dive in to see how far this rabbit hole goes!


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK