Welcome! Babylon Native is a collection of technologies intended to bring the power and flexibility of Babylon.js to cross-platform applications beyond the browser. The goal of this project is to allow the same JavaScript that powers Babylon.js apps on the Web to work identically in native apps on Windows, macOS, iOS, Android, and Linux.
Check out the home page for a project overview.
- Project Status
- Building
- All Development Platforms (Do this first!)
- Building on Windows 10, Targeting Windows Desktop (Win32)
- Building on Windows 10, Targeting Universal Windows Platform (UWP)
- Building on Windows 10, Targeting HoloLens 2
- Building on macOS, Targeting macOS
- Building on macOS, Targeting iOS
- Building on Windows, Targeting Android
- Building on Ubuntu, Targeting Linux
- Selecting the Graphics API
- Documentation
Babylon Native is currently available as a public preview in source form only. While many features are supported and functional, there are still features that are under active development. Please note that this project is not at the point where updates are fully backward compatible yet, and thus the contract for consuming Babylon Native can still and probably will change in the future.
Babylon.js has many, many features; and while the goal of Babylon Native is to support an overwhelming majority of those features, not all parts of Babylon.js are equally well supported by Babylon Native at this time. This section is intended to help readers "eyeball it," checking quickly whether a given type of feature is likely supported by Babylon Native at this time. For more precise information about current and upcoming support for particular features, please don't hesitate to ask us on the forum.
Many core features from Babylon.js are supported. Here is a non-exhaustive list.
- 3D Assets (glTF, OBJ, etc.)
- Animations
- Behaviors
- Cameras
- Gizmos
- Materials
- Meshes
- Lights
- Physics
- Scenes
- Shaders
- Sprites
- Textures loaded from a PNG or JPEG
- XR
The following are features that are not completely finished yet or have gaps.
- Environment (only
.env
supported) - GUI (text rendering experimentally supported)
- Input (only single pointer supported)
- Instancing (only thin instances supported)
- Post Processing (some are supported)
- Media Devices (e.g., Webcams) (experimental)
The following are features that don't work right now but will work in the future.
- Audio
- Serializers
- Particles
- Texture Loaders (KTX, DDS, etc.)
The following are features that depend on features (e.g. HTML) that are outside the scope of what this project will support.
- Inspector
- Node Material Editor
- GUI Editor
- Performance Profiler
- 2D Controls
- Babylon Native
- Babylon Native: The Journey So Far
- Babylon React Native: Bringing 3D and XR to React Native Applications
- Babylon Native: Continuing the Journey
- Audio in Babylon Native — Charting the way
- A Mysterious Case of Skinned Mesh Disappearances
- A Babylon Native Backstage Tour
Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests.
Security issues and bugs should be reported privately, via email, to the Microsoft Security Response Center (MSRC) at [email protected]. You should receive a response within 24 hours. If for some reason you do not, please follow up via email to ensure we received your original message. Further information, including the MSRC PGP key, can be found in the Security TechCenter.