What Babylon.js Does
- PBR materials — physically based rendering with IBL
- Node Material Editor — visual shader authoring
- Playground — online IDE for experiments and sharing
- GUI system — 2D and 3D in-scene UI
- Physics — Havok, Cannon, Oimo integrations
- Animation — keyframe, skeletal, morph targets, FBX import
- Post-processing — bloom, DOF, SSAO, motion blur
- WebXR — VR/AR with controller support
- WebGPU — experimental next-gen backend
- glTF 2.0 — first-class import with KHR extensions
Architecture
Engine manages the GL/GPU context. Scene holds Cameras, Lights, Meshes, Materials, Nodes. Mesh builders provide primitives; loaders handle glTF/OBJ/STL/BabylonNative formats. Everything is strongly typed with TypeScript.
Self-Hosting
Client library.
Key Features
- PBR materials
- Node Material Editor (visual shaders)
- WebGL + WebGPU backends
- Physics plugins (Havok, Cannon, Oimo)
- WebXR (VR/AR)
- glTF 2.0 loader
- Built-in Inspector for debugging
- Playground IDE
- GUI system (2D + in-scene 3D)
- TypeScript-first
Comparison
| Engine | Focus | Ecosystem | Languages |
|---|---|---|---|
| Babylon.js | Games + enterprise 3D | Large | TS/JS |
| Three.js | Flexible 3D lib | Largest | JS |
| PlayCanvas | Collab editor | Medium | JS |
| Unity WebGL | Full game engine | Huge | C# |
| Godot HTML5 | Full game engine | Medium | GDScript |
常见问题 FAQ
Q: Babylon.js vs Three.js? A: Babylon 是完整游戏引擎(场景、物理、动画、编辑器),开箱即用;Three.js 是更小的 3D 库,更灵活但需要自己拼工具链。企业项目多选 Babylon,艺术/实验多选 Three。
Q: 支持 WebGPU 吗?
A: 支持。启用 WebGPUEngine(仍在完善中)。v7+ 渐进式可用。
Q: 用 Node Material Editor? A: 可视化节点编辑器,在线设计 shader 后导出为 Babylon 材质。不需要写 GLSL 也能做复杂效果。
来源与致谢 Sources
- Docs: https://doc.babylonjs.com
- GitHub: https://github.com/BabylonJS/Babylon.js
- License: Apache 2.0