游戏引擎 活跃维护

Babylon.js

BabylonJS/Babylon.js

Babylon.js 是一个强大、美观、简单且开放的游戏和渲染引擎,集成在一个友好的 JavaScript 框架中。

26126
Stars 标星
3699
Forks 分支
524
Watchers 关注
23
Open Issues
TypeScript
主要语言
Apache-2.0
开源协议
1.41 GB
仓库大小
6 小时前
最后推送
一键安装扩展 / 插件指令
dsh plugin --profile web add github:BabylonJS/Babylon.js
git clone https://github.com/BabylonJS/Babylon.js.git
git clone git@github.com:BabylonJS/Babylon.js.git
README.md master

英文原文正文为项目原始 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();
});

贡献

如果你想贡献,请先阅读我们的贡献指南。

文档

有用的链接

功能

要获取支持功能的完整列表,请访问我们的网站。

本站来源与版权声明
  • 本文标题: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 发送下架通知,并附上项目地址与本页链接。本站核实后将第一时间删除本页内容,或改为不复制原文的目录性收录;署名更正等其他要求可一并提出。