Babylon.js
Getting started? Play directly with the Babylon.js API using our playground. It also contains a lot of samples to learn how to use it.
Any questions? Here is our official forum on www.html5gamedevs.com.
CDN
Additional references can be found on https://cdn.babylonjs.com/xxx where xxx
is the folder structure you can find in the /dist folder like https://cdn.babylonjs.com/gui/babylon.gui.min.js
For the preview release, use the following URLs:
Additional references can be found on https://preview.babylonjs.com/xxx where xxx is the folder structure you can find in the /dist/preview release folder like https://preview.babylonjs.com/gui/babylon.gui.min.js
npm
BabylonJS and its modules are published on npm with full typing support. To install, use:
npm install babylonjs --save
This will allow you to import BabylonJS entirely using:
import * as BABYLON from 'babylonjs';
or individual classes using:
import { Scene, Engine } from 'babylonjs';
If using TypeScript, don't forget to add 'babylonjs' to 'types' in tsconfig.json
:
...
"types": [
"babylonjs",
"anotherAwesomeDependency"
],
...
To add a module, install the respective package. A list of extra packages and their installation instructions can be found on the babylonjs user on npm.
Usage
See Getting Started:
var canvas = document.getElementById('renderCanvas');
var engine = new BABYLON.Engine(canvas, true, {preserveDrawingBuffer: true, stencil: true});
var createScene = function(){
var scene = new BABYLON.Scene(engine);
var camera = new BABYLON.FreeCamera('camera1', new BABYLON.Vector3(0, 5, -10), scene);
camera.setTarget(BABYLON.Vector3.Zero());
camera.attachControl(canvas, false);
var light = new BABYLON.HemisphericLight('light1', new BABYLON.Vector3(0, 1, 0), scene);
var sphere = BABYLON.Mesh.CreateSphere('sphere1', 16, 2, scene, false, BABYLON.Mesh.FRONTSIDE);
sphere.position.y = 1;
var ground = BABYLON.Mesh.CreateGround('ground1', 6, 6, 2, scene, false);
return scene;
}
var scene = createScene();
engine.runRenderLoop(function(){
scene.render();
});
window.addEventListener('resize', function(){
engine.resize();
});
Preview release
Preview version of 4.0 can be found here.
If you want to contribute, please read our contribution guidelines first.
Documentation
Useful links
- Official web site: www.babylonjs.com
- Online playground to learn by experimentating
- Online sandbox where you can test your .babylon and glTF scenes with a simple drag'n'drop
- Online shader creation tool where you can learn how to create GLSL shaders
- 3DS Max exporter can be used to generate a .babylon file from 3DS Max
- Maya exporter can be used to generate a .babylon file from 3DS Max
- Blender exporter can be used to generate a .babylon file from Blender 3d
- Unity 5 (deprecated) exporter can be used to export your geometries from Unity 5 scene editor(animations are supported)
- glTF Tools by KhronosGroup
Features
To get a complete list of supported features, please visit our website.
Build
Babylon.js is automatically built using Gulp. For further instructions see the readme at /Tools/Gulp.