1. Babylon.js
用于创建可以出售的专业级游戏里面,Babylon.JS 无疑是目前最好的 JavaScript 3D 游戏引擎。
Babylon.JS 是 David Catuhe 热爱3D游戏引擎的产物。他具有 DirectX,OpenGL 和 Silverlight 这些 3D 游戏引擎的开发经验,并最终在 JavaScript 中创建了这个。
Babylon.JS 的核心里面包含了一些关键特性:环境光、相机、材料、网格、碰撞引擎、物理引擎、声音引擎 和 优化引擎。
2. Three.js
Three.js是另一个全面而强大的JavaScript 3D库,可用于处理所有3D,从创建简单的3D动画到创建交互式3D游戏。
Threejs库不仅提供支持WebGL渲染器的功能,还提供SVG,Canvas和CSS3D渲染器。但是,从游戏角度看,您可能只想关注three.js库的WebGL渲染器。
Three.JS是由Doob和Altered Qualia创建和维护的,可在MIT许可下作为开源使用。您可以下载缩小版本或通过CDN使用它。
您可以在 GitHub 上获取three.js 3D引擎的源代码。
3. Turbulenz
Turbulenz是最古老的游戏引擎之一,其历史可以追溯到2009年,当时HTML5和WebGL仍在制作中。 Turbulenz直到2013年才作为开放源代码提供,2013年,根据MIT许可,Turbulenz首次作为开放源代码免费提供给公众。
Turbulenz作为开放源代码发布后,已经看到了巨大的需求。
Turbulenz包含大量功能,例如2D物理,3D物理,声音,视频以及其他服务,例如排行榜,多聊天,付款和用户数据。
4. Famo.us
Famo.us是HTML5 3D开发市场中的另一大参与者,并且是免费使用JavaScript 3D框架的最佳开源之一。关于famo.us的最好的事情是,它带有3D布局引擎,该引擎与3D物理驱动的动画引擎完全集成在一起。
Famo.us入门非常简单,为famo.us大学的开发人员提供免费教室。社区是一个伟大而支持的社区,您可以轻松找到大量资源和工作示例。
5. PlayCanvas.js
PlayCanvas是基于企业级开源JavaScript的WebGL游戏引擎,它拥有大量开发人员工具,可帮助您立即构建3D游戏。 PlayCanvas.js由专业社区构建,最初不是开源的,但是现在您可以将其存储在GitHub上,并开始免费用于下一个3D游戏项目。
它还具有在您的浏览器中运行的基于云的编辑器,因此PlayCanvas入门就像导航到编辑器URL一样容易。 Editor支持团队之间的协作,这实际上意味着许多人可以并行处理同一项目。
PlayCanvas.js得到了 Mozilla,Activision 和 ARM 等巨头的支持。
6. Goo Engine
从Goo Technologies公司开始,Goo Engine是一组功能强大的JavaScript API,可用于在HTML5和WebGL中创建任何3D内容。有一个在线编辑器goocreate可以在此引擎上运行,并具有许多功能,如可视化3D编辑器,材质编辑器,脚本和易于发布的选项等。
您可以通过支付一些相关的许可费用来使用在线浏览器编辑器。
尽管编辑器需要一些相关费用,但是基于JavaScript的goo引擎绝对是免费的,可以下载以用于自己的3D项目。您还可以直接在代码中添加以下行,并立即开始使用goo引擎。
7. CooperLicht
库珀·里希特 Ambiera是创建它的公司,将其用于内部生产多年,并最终以开源形式提供。
CopperLIcht是用于创建基于浏览器的游戏的最佳3D引擎之一。它是3D游戏编辑器CopperCube的后端引擎。
CopperCube是支持构建3d游戏和动画所需的所有功能的编辑器。但是,编辑器需要支付一定的许可费,并且不能作为开源使用。
8. Voxel.JS
Voxel.Js 是由@maxogden和@substack编写的基于开源JavaScript的3D游戏引擎。自发布以来,社区发展迅速。如果您是喜欢模块化方法的人,那么Voxel是一个不错的选择。
Voxel 引擎是用于构建3D游戏的核心模块,可以根据需要插入其他模块。截至目前,npm上发布了大约200多个插件。
有大量的资源,教学和模块可用于Voxel入门。您可以使用此引擎轻松构建体素风格的游戏。
9. Blend4Web
Blend4Web于2014年由一家名为Triumph的俄罗斯公司作为开源3D框架发布。它与Triumph的3D内容创作工具“ Blender”紧密集成,并且对Blender的节点材料,粒子系统,子弹物理学和其他功能具有本地支持。
Blend4Web正在积极开发中,并且会在短期内进行大量增强,看起来有望在不久的将来与像Babylon.js和three.js这样的大型竞争对手竞争。
10. Enchant.js
Enchant.js是一个模块化的,面向对象的JavaScript框架,用于在HTML5中创建简单的应用和游戏。它可以在MIT许可下作为开放源代码获得,因此可以免费使用。可以使用其他插件创建3D动画和游戏,这些插件使WebGL拥有enchant.js的功能。
Enchant.js通过新功能和插件变得功能强大,并由UEI的秋叶原研究中心积极维护和开发。