相关网站

Babylon.js 官方网站
Babylon.js 中文网
Babylon.js Github地址

CDN

  • https://cdn.babylonjs.com/babylon.js
  • https://cdn.babylonjs.com/babylon.max.js

可以在https://cdn.babylonjs.com/xxx上找到其他参考,其中xxx是可以在/dist文件夹中找到的文件夹结构,如下所示:

  • https://cdn.babylonjs.com/gui/babylon.gui.min.js

对于预览版本,可以使用以下URL链接:

  • https://preview.babylonjs.com/babylon.js
  • https://preview.babylonjs.com/babylon.max.js

其他参考资料可在https://preview.babylonjs.com/xxx上找到,其中xxx是可以在/dist/预览版文件夹(如https://preview.babylonjs.com/gui/babylon.gui.min.js)中找到的文件夹结构

<!--- 使用cdn提供的url链接 --->
<!--- Link to the last version of BabylonJS --->
<script src="https://cdn.babylonjs.com/babylon.js"></script>

npm

使用npm来为项目安装BabylonJS:

npm install babylonjs --save

使用以下命令导入BabylonJS:

import * as BABYLON from 'babylonjs';

或加载特定的类:

import { Scene, Engine } from 'babylonjs';

Start

/第一步从HTML文档中获取canvas元素的引用:

var canvas = document.getElementById('renderCanvas');

然后,加载 Babylon 3D 引擎:

var engine = new BABYLON.Engine(canvas, true);

创建名为 createScene 的 function,并返回 scene

var createScene = function(){// Create a basic BJS Scene object.var scene = new BABYLON.Scene(engine);var camera = new BABYLON.FreeCamera('camera', 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);...// Return the created scene.return scene;
}

注意: 其中的 camera 是必须的。

接下来渲染场景:

// 调用createScene
var scene = createScene();// 注册一个渲染循环来重复渲染画布上的场景:
engine.runRenderLoop(function () {scene.render();
});

以上便创建了一个最基本的BabylonJS场景,不过场景中还未添加任何物体,之后的文章中再来介绍如何添加物体。

完整代码

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Babylon - Getting Started</title><style>html, body {overflow: hidden;width: 100%;height: 100%;margin: 0;padding: 0;}#renderCanvas {width: 100%;height: 100%;touch-action: none;}</style><!--- Link to the last version of BabylonJS ---><script src="https://cdn.babylonjs.com/babylon.js"></script></head><body><canvas id="renderCanvas"></canvas><script>window.addEventListener('DOMContentLoaded', function () {var canvas = document.getElementById('renderCanvas');var engine = new BABYLON.Engine(canvas, true);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('camera', 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);// Return the created scene.return scene;}// 调用createScenevar scene = createScene();// 注册一个渲染循环来重复渲染画布上的场景:engine.runRenderLoop(function () {scene.render();});// 最后,您应该实现一个canvas/window resize 事件处理程序,如下所示:window.addEventListener('resize', function () {engine.resize();});});</script>
</body></html>

Babylon.js - 起步相关推荐

  1. Babylon.js 3.3发布:更强大的粒子系统和WebVR支持

    Babylon.js 3.3版本利用微软混合现实工具包(MRTK)的功能来改进WebVR开发,并改进了其粒子系统控件. MRTK提供了一系列脚本和组件来加速混合现实应用程序的开发.为了简化GUI VR ...

  2. babylonjs 分部加载模型_使用 Babylon.js 在 HTML 页面加载 3D 对象

    五一 Windwos Blogs 推了一篇博客, Babylon.js v3.2 发布了.因为一直有想要在自己博客上加载 3D 对象的冲动,这两天正好看到了,就动手研究研究.本人之前也并没有接触过 W ...

  3. 基于babylon.js的3D网页游戏从零教程

    3D 游戏的 javascript 框架: 在很久一段时间 web 端的 3D 游戏引擎一直是 nothing,但现在却如雨后春笋. Unity (Unity 2018.2 开始已经彻底弃用 js,使 ...

  4. Babylon.js 深入

    目录 1.第一章 动画 1. 设计动画 设计剪辑 反转动画 2. 动画方法描述 创建动画 设置关键帧 开始动画 可动画化 3. 排序动画 ​编辑 (1)设计:对于相机 (2)对于门 (3)对于灯光 4 ...

  5. Babylon.js 深入 - 第 2 章 - 声音(2)

    Babylon.js 深入 - 第 2 章 - 声音(2) 声音 Babylon.js 声音引擎基于 Web Audio 规范,要使用它,您需要使用与 Web Audio 兼容的浏览器.声音引擎提供环 ...

  6. babylon.js小人快跑动画效果

    babylon.js小人快跑动画效果 var createScene = function () {// This creates a basic Babylon Scene object (non- ...

  7. babylon.js实战教程

    致读者 最详细的babylon.js实战文档:babylon.js实战中文文档 什么是Babylon.js Babylon.js是一个javascript开源框架,用于为Web开发3D应用程序/视频游 ...

  8. Babylon.js 踩坑之正交摄像机,平行投影的相关设置

    最近在研究Babylon.js这款专业Web3D的游戏引擎,官网的教程很全面,但不免有些遗漏的地方.今天,就讲Babylon.js中相机的投影类型.         Babylon.js中的相机类型有 ...

  9. 图形化开发(一)——Three.js基本介绍-优缺点-在线编辑器 Babylon.JS是最好的JavaScript3D游戏引擎

    图形化开发(一)--Three.js基本介绍-优缺点-在线编辑器 & Babylon.JS是最好的JavaScript3D游戏引擎 课程主要学习目标 Threejs ( 3d ) D3 (做数 ...

最新文章

  1. SharePoint 2010 新体验5 - Office Web Applications
  2. hive sql操作
  3. 从零入门 Serverless | 教你 7 步快速构建 GitLab 持续集成环境
  4. 程序员法律考试(3)-依法治国的基本原则和法制体系具体任务
  5. 如何做好 Android 端音视频测试?
  6. SBO部分SQL查询奉献
  7. 从零打造springboot+freemarker+layui实现简易CMS管理系统(一)
  8. Magento 获取当前店铺信息(首页,类别,地址等)
  9. java0到9的字符怎么表示_java,_java 怎么生成一个0-9,a-z的一个44位字符串作为上传文件的名字,java - phpStudy...
  10. php 使用redis队列简单实用
  11. 关于动网论坛、动力起航、自由动力、动易、动感购物、乔客、织梦CMS.
  12. Hadoop面试题及参考答案
  13. python网络爬虫最细致讲解之漫画抓取【细!!!】
  14. PowerPC技术与市场杂谈
  15. 物联网和区块链:挑战与风险
  16. linux里case命令,Linux系统中的case命令怎么用
  17. Ionic系列——Ionic介绍
  18. 绩效/加薪/年终奖,虐你如初恋
  19. 团体程序设计天梯赛——L1-039 古风排版
  20. WIN10共享打印机报错解决方法

热门文章

  1. 迷宫游戏纯c语言代码,C++ 迷宫游戏实现代码
  2. 关于异步log4j2中location信息打印问题
  3. 电脑桌面云便签怎么将一个便签分类里内容移动到另一个分类?
  4. 首经贸大学计算机专业好吗,首都经贸2+2(首都经贸大学是211吗985吗)
  5. linux系统安装内存测试,一种Linux系统下基于IDK内存注错的测试方法及系统与流程...
  6. 微信小程序通过保存图片分享到朋友圈
  7. Nginx配置+转发8080端口+页面静态缓存+https配置
  8. SQL必知必会个人总结(SQL SERVER)
  9. 面试最后一关谈期望薪资时, HR压价该怎么应对?
  10. 安卓 Android 11、12 不使用第三方 Recovery TWRP 刷入 Magisk v22+ 支持联发科