首页 > 其他分享 >3D 可视化:18 个 WebGL 框架和 Web3D 图形库

3D 可视化:18 个 WebGL 框架和 Web3D 图形库

时间:2024-05-07 20:44:17浏览次数:26  
标签:Web 游戏 18 WebGL js 可视化 图形库 3D

3D 可视化:18 个 WebGL 框架和 Web3D 图形库

作者:2D3D前端可视化开发
  • 2023-02-10 湖南
  • 本文字数:2904 字

    阅读完需:约 10 分钟

3D可视化:18个WebGL框架和Web3D图形库

WebGL 是基于 OpenGL 的 JavaScript API 库,允许 Web 浏览器在浏览器中渲染 3D / 2D 图形,而无需安装额外的插件、桌面应用程序。WebGL 允许通过浏览器使用机器 GPU 将 3D 图形渲染成 HTML 页面。WebGL 目前在大多数浏览器(如 Google Chrome,Mozilla Firefox 和 Safari)中都受支持。WebGL 可以通过浏览器设置或使用特殊插件来禁用或启用。

 

WebGL 框架和库用于创建交互式展示,基于网页游戏、可视化、虚拟现实(VR)和混合现实(MR)应用程序。

 

WebGL 用于多个行业,如游戏、工程、数据分析、地理空间分析、科学和医学可视化与模拟。

 

Three.js

JavaScript 3D WebGL 库

 

 

Three.js 是最著名的 3D WebGL JavaScript 库,成千上万的开发人员使用它来制作基于 WebGL 的游戏、模型、网站。它有数百个演示和示例,丰富的教程库以及强大的社区。Three.js 被用作许多 WebGL 图形引擎和几个浏览器就绪游戏引擎的基础。它具有强大的轻量级在线编辑器。

Babylon.js

Web 3D 图形引擎

 

 

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

 

Babylon.js 是一个简单而强大的 WebGL 驱动的 3D 图形引擎,它为 JavaScript 开发人员提供了简单的 API 以及丰富的文档和教程。可用于构建交互式 3D 展示/演示、3D Web 产品演示、游戏、VR(虚拟现实)应用程序和复杂的架构模拟。

 

Babylon.js 拥有一个非常大的开发人员社区,提供代码片段、教程,当然还有可重用的扩展来扩展其核心功能。

Filament

谷歌移动优先的 WebGL 框架

Filament 是一个用 C++编写的基于物理的实时渲染器。它是移动优先的,但也是多平台的。Filament 是为 Web 构建的开源 WebGL 实时 3D 渲染器。它使用 C++,旨在成为移动优先的 3D 平台。Filament 由 Google 开发和发布,作为其开源项目的一部分。虽然它针对多平台(Android,iOS,Linux,macOS 和 Windows)以移动为重点,但它在开发人员中并不受欢迎。这是一个相当新的库,但随着时间的推移,它可能会引起游戏开发人员的注意。

KickJS

Web 的开源图形和游戏引擎

 

 

KickJS 是一个开源(BSD 许可证)WebGL 游戏引擎和 3D Web 图形库,专为现代 Web 浏览器构建。它为新开发人员提供了简单的学习曲线,因为它带有丰富清晰的文档、教程和几个游戏示例。作为游戏引擎,KickJS 支持鼠标、键盘和游戏手柄控制器。它为开发人员提供了多种工具,包括着色器编辑器、模型工具、扩展查看器以及一些具有清晰代码的游戏示例。

ClayGL

构建可扩展的 Web3D 应用程序

 

 

ClayGL 是一个 Web 3D 图形库,用于构建 3D Web 就绪应用程序,例如在真实的地理地图上绘制交互式 3D 街道地图。ClayGL 作为一个开源项目提供。

PlayCanvas

用于 Web 的游戏和 3D 图形引擎

 

 

PlayCanvas 是一个轻量级的全功能 3D 网页游戏和图形引擎。它是开发人员最喜欢的 WebGL 3D 游戏引擎。它具有令人印象深刻的功能列表,可为游戏开发人员提供构建 Web 优先图形丰富的游戏所需的一切。PlayCanvas 被许多游戏开发商使用,市场上有几款成功的游戏。PlayCanvas 不仅为游戏而构建,还可用于构建 AR(增强现实)和 VR(虚拟现实)应用程序。

WebGLStudio.js

开源 Web 3D 图形编辑器和创建者

 

 

WebGLStudio 是一个开源的高级 3D WebGL 基于 Web 的编辑器。使用 WebGLStudio,可以导出包含所有信息的 JSON 文件,并在 LiteScene 中使用它。WebGLStudio.js 可以直接从浏览器创建交互式 3D 场景,并允许直观地编辑场景。

Litescene.js

开源 Web 3D 图形编辑器和创建者

Litescene.js 是一个简单而强大的 WebGL 库,提供基于组件的节点层次结构,它提供了简单的 JSON 代码,易于嵌入 Web 项目中,并在 WebGLStudio.js 编辑器中使用。

Litescene.js 使用自己的迷你库“Litegl.js”来扭曲 WebGL 组件,通过创建用于管理不同项目的类(如缓冲区,网格,纹理,着色器)和任何 WebGL 应用程序的其他常见方面,使其更加用户友好。

Luma

优步的 3D WebGL 可视化库

 

 

Luma 是一个开源的高性能 WebGL2 组件,用于 GPU 驱动的数据可视化和计算。它由 Uber 作为一个开源项目发布和维护。

A-Frame

构建 VR(虚拟现实)体验的 Web 框架

 

 

A-Frame 是一个开源的 WebGL 框架,用于构建虚拟现实(VR)应用程序。它被迪士尼、谷歌、Mozilla、NASA、三星、索尼和丰田等世界顶级公司使用。它相当易于使用,因为它对于有经验的人和初学者来说也很容易学习。A-Frame 可以在 Vive、Rift 等 VR 平台、Mozilla Firefox 和 Google Chrome 等浏览器、性能流畅的智能手机上运行。

X3DOM

任何 Web 项目中构建和嵌入 3D 元素

 

 

X3DOM 是一个 WebGL 框架,用于为网站和 Web 应用程序构建可嵌入的 3D Web 就绪图形。它提供了可以添加到任何 HTML5 项目的简单标记代码。

X3DOM 将 3D 内容无缝集成到您的网页中,场景直接写入 HTML 标记中。无需插件。只需包含一个 JavaScript 文件。免费用于非商业和商业目的。

Grimoire.js

用于 Web 开发的 WebGL 框架

 

 

Grimoire.js 是一个用于构建 3D Web 应用程序的开源 WebGL 框架,它旨在为 Web 工程师和 CG 工程师之间架起一座桥梁。

PixiJS

HTML5 创建引擎

 

 

PixiJS 是一个 2D / 3D Web 图形引擎,可简化为 Web 创建令人惊叹的交互式图形应用程序。它是一个模块化引擎,可以通过插件轻松扩展,它受到 Web 开发人员,2D 游戏创作者以及 Google,BBC,Volkswagen,HBO,Adobe 和 Disney 等大公司的青睐。最好创建交互式复杂的 2D 可视化、2D 游戏和产品展示。

SceneJS

 

 

SceneJS 是一个开源(已停产)基于 WebGL 的图形引擎,用于高度详细的 3D 可视化。它是使生物数字人类项目滴答作响的核心引擎。虽然该项目已经停止,并且 BioDigitalHuman 使用经过大量修改的版本(非开源),但旧的存储库已被存档用于 WebGL 教育目的。SceneJS 团队发布了一个新的库作为生产就绪库 XeoGL。

XeoGL

SceneJS 继任者

 

 

SceneJS 的继任者 XeoGL 是由同一开发人员发布的,它是数据驱动的 WebGL 图形引擎,带有多个工具,旨在更轻松地将 CAD / 3D 集成到 Web 项目中。它旨在提供一种工具来构建复杂的 3D WebGL 图形,这些图形可以通过现代浏览器流畅运行。

CurtainsJS

JavaScript WebGL Animation Library

 

 

CurtainsJS 是一个开源的 WebGL 库,旨在为网页提供基于 WebGL 的动画。它不是图形引擎,也不是游戏引擎,而是基于 3D 动画和事件的图形库。它使用 WebGL 渲染库将基于 HTML 的元素转换为 3D 动画对象。

PhiloGL

 

 

PhiloGL 是一个 WebGL Javascript 框架,用于构建用于数据可视化,创意编码和游戏开发的交互式 3D 复杂图形应用程序。它可以与其他库一起使用,因为它与库无关。这是一个由 SenchaLabs 在 MIT 许可下发布的开源项目。

Sovit3D

基于 WebGL 3D 可视化编辑器

Sovit3D 是一个物联网可视化 PaaS 开发平台,基于 JavaScript 语言的 3D 图形引擎,为 Web 可视化提供了丰富的展现形式和视觉效果,帮助软件开发公司、解决方案提供商轻松搭建 3D 可视化界面。平台聚焦工业数字孪生的生产管控、智慧城市的监控运维等可视化应用领域,产品的模块组态化形式可以满足全要素智慧场景的构建。广泛应用于电力能源、水利、物联网、工业互联网、智慧城市、智慧医疗、智慧农业、IT 运维等各行业多领域。

 

Sovit3D 平台采用 B/S 架构,基于 WebGL 绘图技术标准,提供基于 Web 浏览器的 3D 可视化行业组件,支持 HTML5/SVG 等最新技术,可方便的在浏览器上进行浏览和调试。为开发人员制作符合用户使用习惯的大屏可视化应用,包括 2D 图表分析、3D 建筑实景、3D 工业设备模型等相关内容,轻松拖拽即可实现,控制实时数据及动画展示、历史回放、报警、命令下发等功能。 

标签:Web,游戏,18,WebGL,js,可视化,图形库,3D
From: https://www.cnblogs.com/sexintercourse/p/18178349

相关文章

  • Tensorflow object detection API (ubuntu18.04) 安装和踩坑;
    踩坑:将slim和models路径加入虚拟环境中;将slim和models路径加入系统路径中;(加入系统路径的时候,这个pwd) qit(持续更新)具体安装流程:(很多问题)2.0版本;(继续更新)condacreate-ntf_obj_det_api_v2python=3.8 (很丝滑)重新尝试tf1.0版本;参考:https://blog.csdn......
  • 洛谷题单指南-动态规划2-P1833 樱花
    原题链接:https://www.luogu.com.cn/problem/P1833题意解读:在有限的时间内,看n株樱花树,第i株樱花树可以看pi次,看每株樱花树耗费时间ti,看每株樱花树一次美学值ci,求最多能看到多少美学值。解题思路:本题实质是一个混合背包问题(pi>0是多重背包,pi=0是完全背包):背包容量:总时间,可以根据......
  • ABX盲听测试指南.18176383
    本次测试旨在测试人类对不同品质的音源的敏感程度,在本次测试中我们会测试:128kbps和320kbps的mp3能否听出区别320kbps的mp3和flac能否听出区别本次测试针对如下人群:普通人、发烧友、职业音频从业者(受过专业听音训练)、音频爱好者本次测试所需工具和音源:https://wwp.lanzouo.......
  • 力扣1218.最长定差子序列
    题目给你一个整数数组arr和一个整数difference,请你找出并返回arr中最长等差子序列的长度,该子序列中相邻元素之间的差等于difference。​ 子序列是指在不改变其余元素顺序的情况下,通过删除一些元素或不删除任何元素而从arr派生出来的序列。解题思路​ 动态规划1.常......
  • Ubuntu18 安装NoMachine远程桌面(解决远程桌面延迟)
    #问题:Ubuntu18使用自带的共享桌面、VNC远程桌面延迟、降低分辨率也无效。#方案:最后找到安装NoMachine的远程桌面,解决远程卡顿问题根据自己操作系统选择NoMachineforLinux进行下载官网:https://downloads.nomachine.com/#出处:#https://www.cnblogs.com/liucx/#安装方......
  • 洛谷题单指南-动态规划2-P1854 花店橱窗布置
    原题链接:https://www.luogu.com.cn/problem/P1854题意解读:F束花依次放入V个花瓶,每个花瓶最多一朵,且花的顺序在花瓶中递增,计算最大的美学值,并且输出每朵花具体放置方案。解题思路:首先想到的的DFS法,对于每一朵花,枚举所有的摆放方案,累加美学值,并记录放置位置,完成一种方案就记录最......
  • vue-i18n的9以上的版本中@被用作特殊字符处理,直接用会报错
    vue3项目中使用vue-i18n的9以上的版本实现国际化,使用过程中出现报错:国际化使用 "validation.regExp.name":"仅允许输入字母、数字与_.@字符"报如下错误 Messagecompilationerror:Invalidlinkedformat1|仅允许输入字母、数字与_.@字符Messagecompilationerror:Un......
  • 通过劫持线程arena实现任意地址分配 n1ctf2018_null
    通过劫持线程arena,当堆开了一个线程之后,如果没有做好保护随之的危险也悄然而至❗BUU上的n1ctf2018_null很好的说明了这个问题题目链接:BUUCTF在线评测(buuoj.cn)看一下保护:除了pie保护剩下的保护全开了,64位ida载入看一下上来是一个输入密码,密码是i'mreadyforchallenge......
  • Raft论文阅读笔记.18171971
    本文是对Raft论文阅读后的一些核心内容总结原论文:InSearchofanUnderstandableConsensusAlgorithm(ExtendedVersion)Raft概览Raft论文中用几个表格给出了Raft的细节概览,这里不用仔细阅读,后面学习的时候会慢慢深刻的理解这些内容server持有的状态RPC原语server规......
  • mORMot 1.18 第23章 使用纯SQL
    mORMot1.18第23章使用纯SQL有时你可能不想使用ORM,或者由于现有且不可更改的数据库与ORM不兼容而无法使用它。在这些情况下,你仍然可以依靠mORMot的其他功能,同时使用纯SQL。你可以发出纯SQL命令并以JSON格式获取数据。下面的示例展示了如何使用快速且开源的Zeos数据库库与Maria......