推荐几个WebGL框架和Web3D图形库(一)
WebGL用于多个行业,如游戏、工程、数据分析、地理空间分析、科学和医学可视化与模拟。
WebGL是基于OpenGL的JavaScript API库,允许Web浏览器在浏览器中渲染3D / 2D图形,而无需安装额外的插件、桌面应用程序。WebGL允许通过浏览器使用机器GPU将3D图形渲染成HTML页面。
WebGL目前在大多数浏览器(如Google Chrome,Mozilla Firefox和Safari)中都受支持。WebGL可以通过浏览器设置或使用特殊插件来禁用或启用。WebGL框架和库用于创建交互式展示,基于网页游戏、可视化、虚拟现实(VR)和混合现实(MR)应用程序。
3D模型在线预览提供多种低代码平台3D模型在线预览解决方案,实现了将多种3D模型格式无缝集成到低代码业务表单中。这意味着用户可以在不离开低代码平台的情况下,直接查看和操作3D模型,极大地提升了数据可视化的效果和用户交互体验。
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作为一个开源项目发布和维护。