学习babylon.js --- [1] 初次体验和安装

2024-03-01 04:30

本文主要是介绍学习babylon.js --- [1] 初次体验和安装,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

babylon.js是微软推出的Web3D库,本文写作时版本是6.x,官方介绍如下,
在这里插入图片描述
看这意思是6.x系列的版本大大提高了性能,并提供了很多新特性。其Github地址是https://github.com/BabylonJS/Babylon.js

本篇文章讲述使用babylon.js的初次体验和安装操作,为后续学习打下基础。


一 简单例子

首先实现一个简单例子来体验一下babylonjs。新建一个文本文件,名字改成index.html,然后把以下内容拷贝进去,

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"/><title>Babylon Template</title><style>html, body {overflow: hidden;width: 100%;height: 100%;margin: 0;padding: 0;}#renderCanvas {width: 100%;height: 100%;touch-action: none;}</style><script src="https://cdn.babylonjs.com/babylon.js"></script></head><body><canvas id="renderCanvas"></canvas><script>const canvas = document.getElementById("renderCanvas"); // Get the canvas elementconst engine = new BABYLON.Engine(canvas, true); // Generate the BABYLON 3D engineconst createScene = function () {// Creates a basic Babylon Scene objectconst scene = new BABYLON.Scene(engine);// Creates and positions a free cameraconst camera = new BABYLON.FreeCamera("camera1", new BABYLON.Vector3(0, 5, -10), scene);// Targets the camera to scene origincamera.setTarget(BABYLON.Vector3.Zero());// This attaches the camera to the canvascamera.attachControl(canvas, true);// Creates a light, aiming 0,1,0 - to the skyconst light = new BABYLON.HemisphericLight("light", new BABYLON.Vector3(0, 1, 0), scene);// Dim the light a small amount - 0 to 1light.intensity = 0.7;// Built-in 'sphere' shape.const sphere = BABYLON.MeshBuilder.CreateSphere("sphere", {diameter: 2, segments: 32}, scene);// Move the sphere upward 1/2 its heightsphere.position.y = 1;// Built-in 'ground' shape.const ground = BABYLON.MeshBuilder.CreateGround("ground", {width: 6, height: 6}, scene);return scene;};const scene = createScene(); //Call the createScene function// Register a render loop to repeatedly render the sceneengine.runRenderLoop(function () {scene.render();});// Watch for browser/canvas resize eventswindow.addEventListener("resize", function () {engine.resize();});</script></body></html>

然后用浏览器打开这个index.html文件,显示效果如下,
在这里插入图片描述
鼠标左键按着不放,然后左右移动,可以看到视角转变的效果。
在这里插入图片描述
这个例子里是使用了babylon的CDN,这样不用本地去安装babylonjs,但是对于正规项目来说,需要本地去安装这个库,最后打包。。。


二 本地安装babylonjs

首先需要安装Nodejs,安装过程不再赘述,就是去nodejs的官网下载node然后安装。babylonjs支持TypeScript,如果用TypeScript开发就需要安装它,

npm install -g typescript

接着是安装babylonjs,注意,这里只是看下如何安装,不用真正安装,等后面搭建项目工程的时候再安装。

babylonjs提供了2种style:UMD或者ES6,用户选择其中一种就行了,它们的区别可以网上搜下,

1. UMD/NPM方式

UMD是Universal Module Definition的缩写,其github地址是https://github.com/umdjs/umd,介绍如下,

在这里插入图片描述

babylon提供的NPM package有以下几个,
在这里插入图片描述
Babylon’s core是必须要安装的,命令如下,

npm install --save babylonjs

安装好之后,在typescript或javascript文件里包含babylonjs可以使用如下语句,

import * as BABYLON from 'babylonjs';

上面这条语句是把core里提供的所有功能都包含了,如果只想引入指定功能,那么可以使用以下语句,

import { Engine, Scene } from 'babylonjs';

其它package可以根据需要进行安装,安装时使用的package名字就是上面介绍的,例如安装materials包就使用如下命令,

npm install --save babylonjs-materials

安装gui包则用如下命令,

npm install --save babylonjs-gui

2. ES6/NPM方式

babylonjs同时也提供npm es6 packages,如下,
在这里插入图片描述
es6 package可以让用户使用“摇树”功能(tree shake)来减少程序大小。

同理,Babylon’s core是必须要安装的,命令如下,

npm install @babylonjs/core

安装好之后,在文件里引入babylonjs可以使用以下语句,

import * as BABYLON from "@babylonjs/core"

上面这条语句是把core里提供的所有功能都包含了,如果只想引入指定功能,那么可以使用以下语句,

import { Engine, Scene } from "@babylonjs/core";

其它package可以根据需要进行安装,安装时使用的package名字就是上面介绍的,例如安装materials包就使用如下命令,

npm install --save @babylonjs/materials

三 总结

本文讲述了如何体验babylonjs以及如何安装babylonjs,这样为后续学习做好准备。

这篇关于学习babylon.js --- [1] 初次体验和安装的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/761213

相关文章

Python使用国内镜像加速pip安装的方法讲解

《Python使用国内镜像加速pip安装的方法讲解》在Python开发中,pip是一个非常重要的工具,用于安装和管理Python的第三方库,然而,在国内使用pip安装依赖时,往往会因为网络问题而导致速... 目录一、pip 工具简介1. 什么是 pip?2. 什么是 -i 参数?二、国内镜像源的选择三、如何

前端原生js实现拖拽排课效果实例

《前端原生js实现拖拽排课效果实例》:本文主要介绍如何实现一个简单的课程表拖拽功能,通过HTML、CSS和JavaScript的配合,我们实现了课程项的拖拽、放置和显示功能,文中通过实例代码介绍的... 目录1. 效果展示2. 效果分析2.1 关键点2.2 实现方法3. 代码实现3.1 html部分3.2

Python安装时常见报错以及解决方案

《Python安装时常见报错以及解决方案》:本文主要介绍在安装Python、配置环境变量、使用pip以及运行Python脚本时常见的错误及其解决方案,文中介绍的非常详细,需要的朋友可以参考下... 目录一、安装 python 时常见报错及解决方案(一)安装包下载失败(二)权限不足二、配置环境变量时常见报错及

Java深度学习库DJL实现Python的NumPy方式

《Java深度学习库DJL实现Python的NumPy方式》本文介绍了DJL库的背景和基本功能,包括NDArray的创建、数学运算、数据获取和设置等,同时,还展示了如何使用NDArray进行数据预处理... 目录1 NDArray 的背景介绍1.1 架构2 JavaDJL使用2.1 安装DJL2.2 基本操

JS 实现复制到剪贴板的几种方式小结

《JS实现复制到剪贴板的几种方式小结》本文主要介绍了JS实现复制到剪贴板的几种方式小结,包括ClipboardAPI和document.execCommand这两种方法,具有一定的参考价值,感兴趣的... 目录一、Clipboard API相关属性方法二、document.execCommand优点:缺点:

MySQL8.2.0安装教程分享

《MySQL8.2.0安装教程分享》这篇文章详细介绍了如何在Windows系统上安装MySQL数据库软件,包括下载、安装、配置和设置环境变量的步骤... 目录mysql的安装图文1.python访问网址2javascript.点击3.进入Downloads向下滑动4.选择Community Server5.

CentOS系统Maven安装教程分享

《CentOS系统Maven安装教程分享》本文介绍了如何在CentOS系统中安装Maven,并提供了一个简单的实际应用案例,安装Maven需要先安装Java和设置环境变量,Maven可以自动管理项目的... 目录准备工作下载并安装Maven常见问题及解决方法实际应用案例总结Maven是一个流行的项目管理工具

MySql9.1.0安装详细教程(最新推荐)

《MySql9.1.0安装详细教程(最新推荐)》MySQL是一个流行的关系型数据库管理系统,支持多线程和多种数据库连接途径,能够处理上千万条记录的大型数据库,本文介绍MySql9.1.0安装详细教程,... 目录mysql介绍:一、下载 Mysql 安装文件二、Mysql 安装教程三、环境配置1.右击此电脑

在 Windows 上安装 DeepSeek 的完整指南(最新推荐)

《在Windows上安装DeepSeek的完整指南(最新推荐)》在Windows上安装DeepSeek的完整指南,包括下载和安装Ollama、下载DeepSeekRXNUMX模型、运行Deep... 目录在www.chinasem.cn Windows 上安装 DeepSeek 的完整指南步骤 1:下载并安装

python管理工具之conda安装部署及使用详解

《python管理工具之conda安装部署及使用详解》这篇文章详细介绍了如何安装和使用conda来管理Python环境,它涵盖了从安装部署、镜像源配置到具体的conda使用方法,包括创建、激活、安装包... 目录pytpshheraerUhon管理工具:conda部署+使用一、安装部署1、 下载2、 安装3