英文原文正文为项目原始 README(英文),本站后续会翻译为中文,当前仅剔除图片与无关章节并统一排版。
Babylon.js
入门?使用我们的playground直接玩 Babylon.js API。它还包含许多示例,帮助学习如何使用它。
有任何问题吗? 这是我们的官方论坛。
内容分发网络
⚠️ 警告:CDN 不应在生产环境中使用。我们 CDN 的目的是为学习如何使用平台或进行小规模实验的用户提供 Babylon 包。一旦您构建了应用程序并准备向全世界分享,您应从自己的 CDN 提供所有包。
对于预览版本,请使用以下 URL:
额外参考列表可以在 这里 找到。
npm
BabylonJS 及其模块已在 npm 上发布,并提供完整的类型支持。要安装,请使用:
npm install babylonjs --save
或者,您现在可以依赖我们的 ES6 包。使用 ES6 版本将允许进行树摇等打包优化。
这将允许您通过以下方式完整导入 BabylonJS:
import * as BABYLON from 'babylonjs';
或使用单独的类:
import { Scene, Engine } from 'babylonjs';
如果使用 TypeScript,不要忘记在 tsconfig.json 中将 'babylonjs' 添加到 'types':
...
"types": [
"babylonjs",
"anotherAwesomeDependency"
],
...
要添加模块,请安装相应的软件包。额外软件包的列表及其安装说明可以在 npm 上的 babylonjs 用户页面 上找到。
使用方法
请参阅 入门指南:
// Get the canvas DOM element
var canvas = document.getElementById('renderCanvas');
// Load the 3D engine
var engine = new BABYLON.Engine(canvas, true, {preserveDrawingBuffer: true, stencil: true});
// CreateScene function that creates and return the scene
var createScene = function(){
// Create a basic BJS Scene object
var scene = new BABYLON.Scene(engine);
// Create a FreeCamera, and set its position to {x: 0, y: 5, z: -10}
var camera = new BABYLON.FreeCamera('camera1', new BABYLON.Vector3(0, 5, -10), scene);
// Target the camera to scene origin
camera.setTarget(BABYLON.Vector3.Zero());
// Attach the camera to the canvas
camera.attachControl(canvas, false);
// Create a basic light, aiming 0, 1, 0 - meaning, to the sky
var light = new BABYLON.HemisphericLight('light1', new BABYLON.Vector3(0, 1, 0), scene);
// Create a built-in "sphere" shape using the SphereBuilder
var sphere = BABYLON.MeshBuilder.CreateSphere('sphere1', {segments: 16, diameter: 2, sideOrientation: BABYLON.Mesh.FRONTSIDE}, scene);
// Move the sphere upward 1/2 of its height
sphere.position.y = 1;
// Create a built-in "ground" shape;
var ground = BABYLON.MeshBuilder.CreateGround("ground1", { width: 6, height: 6, subdivisions: 2, updatable: false }, scene);
// Return the created scene
return scene;
}
// call the createScene function
var scene = createScene();
// run the render loop
engine.runRenderLoop(function(){
scene.render();
});
// the canvas/window resize event handler
window.addEventListener('resize', function(){
engine.resize();
});
贡献
如果你想贡献,请先阅读我们的贡献指南。
文档
有用的链接
- 官方网站: www.babylonjs.com
- 在线 playground 通过实验学习
- 在线 sandbox 可以通过简单的拖放测试你的 .babylon 和 glTF 场景
- 在线 着色器创建工具 可以学习如何创建 GLSL 着色器
- 3DS Max 导出器 可用于从 3DS Max 生成 .babylon 文件
- Maya 导出器 可以从 Maya 生成 .babylon 文件
- Blender 导出器 可以从 Blender 3D 生成 .babylon 文件
- Unity 5(已弃用)导出器 可以从 Unity 5 场景编辑器导出你的几何体(支持动画)
- KhronosGroup 的 glTF 工具
功能
要获取支持功能的完整列表,请访问我们的网站。
本站来源与版权声明
- 本文标题:Babylon.js - Babylon.js 是一个强大
- 本文链接:https://www.cn121.com/gameengine/babylonjs-babylon-js.html
- 原项目:BabylonJS/Babylon.js 版权归原作者 BabylonJS 及贡献者所有
- 收录信息:本站于 2026-10-05 收录本项目,本页所列协议与仓库指标均为收录当时的状态;该日期之后原项目的版本更新与协议变更,本页不作同步。
- 开源协议:收录时本项目采用 Apache-2.0(查看 LICENSE 原文),本站转载其原始文档(未改动文字,仅剔除图片与无关章节);使用、修改、分发请以该仓库 LICENSE 原文为准。本站对原文仅作排版与图片地址适配, 并保留原项目的 NOTICE 与署名要求。
- 站点出处:本文首发于 OneTwoOne,收录自 GitHub 开源项目 BabylonJS/Babylon.js。
- 内容说明:本页正文为原项目 README 原文(英文),本站后续会翻译为中文(当前尚未译出,仅将二级标题译为中文,便于按栏目定位;标题原文可在下方原仓库中查看),仅剔除了图片与赞助等无关章节、并把相对链接改为绝对地址;页首简介为机器翻译自仓库描述。
- 引用声明:商业转载、第三方聚合或 AI 检索训练引用时,请务必保留以上来源出处、本文永久链接,以及原项目的版权声明与许可信息。
- 下架通道:若原项目此后变更或收紧了许可协议、或作者/权利人认为本站的收录方式(译文、排版适配、简介翻译等)超出其授权范围,请通过 xyd3302001@163.com 发送下架通知,并附上项目地址与本页链接。本站核实后将第一时间删除本页内容,或改为不复制原文的目录性收录;署名更正等其他要求可一并提出。