排名前10的H5、Js 3D游戏引擎和框架
由于很多人都在用JavaScript、HTML5和WebGL技术创建基于浏览器的3D游戏,所有JavaScript 3D游戏引擎是一个人们主题。基于浏览器的游戏最棒的地方是平台独立,它们能在iOS、Android、Windows或其他任何平台上运行。

有很多的JavaScript能够用于创建基于浏览器、使用HTML5和WebGL的3D游戏。然后,选择一个合适的游戏引擎是一个不小的挑战,它有时能帮你完成项目或突破项目瓶颈。
为了让你的选择变的容易,我们已经通过分析大多数JavaScript 3D游戏引擎在今天的市场并列出了十大游戏引擎来帮助您用JavaScript创建非常棒的HTML5,WebGL游戏。
1. Babylon.js
毫无疑问,Babylon.JS是最好的JavaScript3D游戏引擎,它能创建可以出售的专业级游戏。
Babylon.JS是David Catuhe对3D游戏引擎热爱的结果,他在用DirectX, OpenGL, 和Silverlight创建3D游戏引擎方面是经验丰富,并最终自己完成了一个游戏引擎。
Babylon.js的一些核心功能包含了场景图与灯光、摄像机、材料和网格、碰撞引擎、物理引擎、音频引擎和优化引擎。
这是一个Babylon.js试验场,你可以拿你手边的游戏来试试这个游戏引擎。
2.Three.js
Three.js是另一个广泛应用并且功能强大的JavaScript 3D库,从创建简单的3D动画到创建交互的3D游戏, 它都能实现。
Threejs带来的不仅是支持WebGL渲染,也支持SVG、Canvas和CSS3D渲染。然而,从游戏的角度来看,你可以只关注Threejs的WebGL渲染。
获取Three.js 3D引擎的源代码—github
3. Turbulenz
Turbulenz是最好的游戏引擎之一,在2009年,当HTML5和WebGL还在酝酿时,它已经被推出。直到2013年,Turbulenz才基于MIT协议拥抱开源。
Turbulenz包含了很多功能,例如2d物理、3d物理、声音、视频和其他服务,如排行榜、multichat,支付和用户数据。
了解更多:biz.turbulenz.com
获取源代码:turbulenz_engine
4. Famo.us
在HTML5 3D发展的市场中,Famo.us占据了非常重要的地位,并且它是最好的JavaScript 3D开源框架之一。对于famo.us,最好的事情就是包装了3D布局引擎,其完全继承了3D物理驱动的动画引擎。
了解更多—famo.us/docs
获取源代码—famous
5. PlayCanvas.js
PlayCanvas是一个基于WebGL游戏引擎的企业级开源JavaScript框架,它有许多的开发工具能帮你快速创建3D游戏。PlayCanvas.js由一个专业社区创建,最初并不是开源的,但现在你可以在github上fork PlayCanvas.js,然后在你的下一个3D游戏项目中免费使用。
它还提供了能在浏览器中云心的云编辑器,开始使用PalyCanvas和导航到编辑器的URL一样容易。
了解更多—playcanvas.com
获取源代码—playcanvas/engine
6. Goo Engine
来自于GOO技术家族,Goo引擎有一组功能强大的JavaScript API,可通过使用HTML5和WebGL创建任何3D事物。有一个在线的编辑器goocreate,可以运行在Goo引擎上,并封装了一些功能,例如视觉三维编辑器,材质编辑器、脚本和容易发布选项等。
你可以通过支付一些相关的许可费用,在浏览器中使用在线编辑器。
尽管编辑器需要一些费用,但是Goo引擎是绝对免费的,你可以下载它并在你的3D项目中使用。
了解更多—-labs.gooengine.com
获取源代码—code.gooengine.com
7. CooperLicht
对于创建基于浏览器的游戏,CopperLIcht是最出色的3D引擎之一,也是CopperCube 3D游戏编辑器的后端引擎。
CopperCube是一个支持创建3D游戏和动画所需要的所有功能的编辑器,但是,它并不开源,需要一些相关的许可费用。
了解更多—ambiera.com/copperlicht
8. Voxel.JS
Voxel.Js是开源的,基于JavaScript的一个3D游戏引擎,自从它发布以来,社区成长非常快。如果你喜欢模块化方法,Voxel是一个不错的选择。
Voxel-engine是创建3D游戏的核心模块,其它模块可以根据需要插入。到目前为止,已经有超过200个扩展在npm上发布。
了解更多—maxogden/voxel-engine
9. Blend4Web
在2014年,Blend4Web作为开源的3D框架而发布,它高度集成了Triumph的3D内容创建工具“Blender”,并且本地支持Blender的节点材料、粒子系统、bullet物理引擎和其他功能。
获取源代码—blend4web.com/en/downloads
10. Enchant.js
Enchant.js是一个模块化的、面向对象的JavaScript框架,可用HTML5创建简单的APP和游戏。它是基于MIT协议开源的,因此开源免费使用。3D动画和游戏开源使用额外的插件(基于WebGL)创建。
文章来源Web开发者,转载请注明出处
排名前10的H5、Js 3D游戏引擎和框架的更多相关文章
- 转载:[转]如何学好3D游戏引擎编程
[转]如何学好3D游戏引擎编程 Albert 本帖被 gamengines 从 游戏引擎(Game Engine) 此文为转载,但是值得一看. 此篇文章献给那些为了游戏编程不怕困难的热血青年,它的 ...
- 《Unity 3D游戏客户端基础框架》概述
框架概述: 做了那么久的业务开发,也做了一年多的核心战斗开发,最近想着自己倒腾一套游戏框架,当然暂不涉及核心玩法类型和战斗框架,核心战斗的设计要根据具体的游戏类型而定制,这里只是一些通用的基础系统的框 ...
- 【直播预告】7月18日3D游戏引擎免费公开课答疑,參与送C币!
喜讯喜讯! 为了酬谢广大学员.CSDN学院特推出iOS和3D游戏引擎开发免费技术答疑公开课,让您度过一个充实的暑假~ 參与本次公开课,即有机会获得50C币! 答疑公开课时间:7月18日 晚7:30-9 ...
- 【直播预告】7月25日3D游戏引擎免费公开课答疑第三期,有奖问答!
喜讯喜讯! 为了酬谢广大学员.CSDN学院特推出iOS和3D游戏引擎开发免费技术答疑公开课.让您度过一个充实的暑假~ 參与本次公开课,进行有奖问答.即有机会获奖. 答疑公开课时间:7月25日 晚7:3 ...
- 3D游戏引擎设计 实时计算机图形学的应用方法 第2版 pdf 带索引书签目录
3D游戏引擎设计 实时计算机图形学的应用方法 第2版 目录 第1章 概述1.1 图形硬件和游戏发展史1.2 本书版本与软件发展史1.3 章节导读 第2章 图形系统2.1 基础知识2.1.1 坐标系 ...
- Pomelo:网易开源基于 Node.js 的游戏服务端框架
Pomelo:网易开源基于 Node.js 的游戏服务端框架 https://github.com/NetEase/pomelo/wiki/Home-in-Chinese
- 棒!使用.NET Core构建3D游戏引擎
原文地址:https://mellinoe.wordpress.com/2017/01/18/net-core-game-engine/ 作者:ERIC MELLINO 翻译:杨晓东(Savorboa ...
- Java 3D游戏引擎——JME(java Monkey Engine)
转自:http://bbs.gameres.com/forum.php?mod=viewthread&tid=180732 JME(java Monkey Engine),一个非常棒的Java ...
- 3D游戏引擎中常见的三维场景管理方法
对于一个有很多物体的3D场景来说,渲染这个场景最简单的方式就是用一个List将这些物体进行存储,并送入GPU进行渲染.当然,这种做法在效率上来说是相当低下的,因为真正需要渲染的物体应该是视椎体内的物体 ...
随机推荐
- HDU 4421 ZOJ 3656 Bit Magic
2-SAT,不要所有位置全部建好边再判断,那样会MLE的. 正解是,每一位建好边,就进行一次2-SAT. #include<cstdio> #include<cstring> ...
- webapp之路--之必备知识
移动设备的用户越来越多,每天android手机的激活量都已经超过130万台,所以我们面向移动终端的WebAPP也开始跟进了.本文主要介绍webapp的开发与调试的相关知识和经验,以及给出几种可选的解决 ...
- HDU 5692 (DFS序+线段树)
DFS获得从0到每一个顶点的距离,同时获得L和R数组.两数组为遍历时从i进入再从i出来的序列. #pragma comment(linker, "/STACK:1024000000,1024 ...
- hibetnateTemplate常用方法
一.hibetnateTemplate常用方法 1.delete(Object entity) 删除指定的持久化实例在程序中一般先用 Assert.notNull和 Assert.isTrue断 ...
- 转 Encoding is Not Encryption 编码和加密的区别
昨天跟别人聊天的时候,别人把base64说成了加密. 我并不是扣字眼,但是做为一个IT技术人员我认为分辨加密和编码的区别算是一个常识. It's unfortunate that the words ...
- Counting Intersections
Counting Intersections Time Limit: 12000/6000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/ ...
- [Big Data]从Hadoop到Spark的架构实践
摘要:本文则主要介绍TalkingData在大数据平台建设过程中,逐渐引入Spark,并且以Hadoop YARN和Spark为基础来构建移动大数据平台的过程. 当下,Spark已经在国内得到了广泛的 ...
- Keepalived详细介绍简介
1.1.Keepalived简介 Keepalived是Linux下一个轻量级别的高可用解决方案.高可用(High Avalilability,HA),其实两种不同的含义:广义来讲,是指整个系统的高可 ...
- awk简单用法
awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大.简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各 ...
- LNMP(Linux+Nginx+Mysql+PHP---源码)环境搭建
LNMP(Linux+Nginx+Mysql+PHP(Perl)) Linux:[root@dep5 mysql]# cat /etc/issueRed Hat Enterprise Linux Se ...