由于很多人都在用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进行渲染.当然,这种做法在效率上来说是相当低下的,因为真正需要渲染的物体应该是视椎体内的物体 ...
随机推荐
-
提交留言HTML模板代码
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <t ...
-
android 通过WiFi进行adb调试
第一种方式: 1.把Android SDK的下的 platform-tools 目录 加入到系统的path变量中 打开cmd命令行 输入adb 显示如下图则为设置成功 2.打开手机 下载一个叫WiFi ...
-
php匿名函数和闭包
一,匿名函数 一个没有名字的函数,使用function定义 <?php $fun = function($a,$b) { return $a+$b; }; echo $fun(1,2);//输出 ...
-
【JAVA、C++】LeetCode 006 ZigZag Conversion
The string "PAYPALISHIRING" is written in a zigzag pattern on a given number of rows like ...
-
【服务器防护】WEB防护 - WEBSHELL攻击探测【转载】
原文:http://www.2cto.com/Article/201511/451757.html 1. 什么是webshell? 基于b/s架构的软件部署在Internet上,那么安全性是必 ...
-
*ecshop 模板中foreach用法详解
1.foreach分以下几个参数 from, item, name, iteration, index 2.使用foreach循环 如果php要传递一个数组(如:$array)给ecshop ...
-
使用IBatisNet的网站,修改database.config无效的问题解决
这周五去客户那更新了一个使用了IBatisNet的Web项目,备份了项目.数据库之后,替换更新的文件(含bin目录)却报数据库连接错. 因为是接手的一个维护项目,加上交接有点问题,所以遇到问题只能自己 ...
-
sirius的学习笔记(3)
毕业论文什么的终于搞完了,重拾我的python Creating the python skeleton project directory $ mkdir project $ cd project ...
-
value must be omitted for boolean attributes
jsx文件中 html5一些标签的属性是boolean的,<div hidden="true">是不被允许的,要改成<div hidden>或<div ...
-
C++ AMP 介绍(两)
C++ AMP 介绍(两) 最后更新:2014-05-02 读前提:<C++ AMP介绍(一个)> 周边环境:Windows 8.1 64bit英文版,Visual Studio 2013 ...