关于YEngine2D

YEngine2D是一个开源的、采用HTML5技术和Javscript语言创建的2D游戏框架,用来构建web二维游戏。

GitHub地址

最新版本

v0.1.2

浏览器支持

Chrome
Firefox
IE9+

外部依赖

您需要先下载YOOP框架

相关游戏

发布HTML5 RTS游戏-古代战争

特点

  • 开源免费

引擎遵循MIT协议,用户可完全自由使用。

  • 良好的设计

引擎从敏捷开发的游戏中提炼而出,具有良好的代码和模块结构,有比较好的可维护性和可扩展性。

  • 良好的可测试性

引擎非常重视单元测试,基本实现了单元测试全覆盖。

  • 使用HTML5技术,面向Web游戏开发

引擎采用最新的HTML5技术和Javascript语言开发,前端开发的同学能很快上手。

领域模型

包图

  • 入口

引擎YE.main提供了引擎入口,可进行游戏配置,加载用户类。

  • 基础

放置通用抽象基类。

  • 核心

包括入口类、导演类、场景类、层类、精灵类,搭建游戏开发的基本框架。

  • 动作

参考cocos2d,提出了立即动作和持续动作类,用户可创建自定义动作类。

  • 动画

提供多种方式创建动画和管理动画。

  • 算法

提供了通用的算法实现,如A*寻路算法。

  • 内部库

集成了多个库,包括:
1、jsExtend
Javascript扩展库,扩展了String和Array对象。
2、YEQuery
仿jquery的Dom操作和ajax封装库。
3、YSound
优先使用Web Audio,可回退到Html5 Audio的声音库。

  • 加载

支持图片、声音、json文件的加载。

  • 数据结构

提出了线性集合类、哈希集合类、图片数据类等。

  • UI

目前只有Canvas通用绘制封装类,后面会加入常用的UI组件。

  • 事件管理

目前支持PC的键盘和鼠标事件,后面会加入移动端事件的支持。

  • 声音管理

封装底层声音库YSound,提供游戏使用的高层api。

升级计划

  • 建立开源社区,丰富文档
  • 优化内存
  • 改进声音加载
  • 支持移动端游戏开发
  • 加入UI组件
  • 优化性能

发布HTML5 2D游戏引擎YEngine2D的更多相关文章

  1. 推荐一些好用的 HTML5 & JavaScript 游戏引擎开发库

    推荐一些好用的 HTML5 & JavaScript 游戏引擎开发库 0. 引言 如果你是一个游戏开发者,并且正在寻找一个可以与 JavaScript 和 HTML5 无缝工作的游戏引擎.那么 ...

  2. 初识phaser框架——开源的HTML5 2D游戏开发框架

    背景: 在网上看到,65行实现flappy bird,感到很好奇.原来是使用开源的2D游戏框架 phaser开发的. 什么是phaser2D游戏开发框架呢? 借鉴与网上的资料: 1.    Phase ...

  3. Phaser是一款专门用于桌面及移动HTML5 2D游戏开发的开源免费框架

    Phaser是一款专门用于桌面及移动HTML5 2D游戏开发的开源免费框架,提供JavaScript和TypeScript双重支持,内置游戏对象的物理属性,采用Pixi.js引擎以加快Canvas和W ...

  4. 如何制作一款HTML5 RPG游戏引擎——第五篇,人物&人物特效

    上一次,我们实现了对话类,今天就来做一个游戏中必不可少的——人物类. 当然,你完全是可以自己写一个人物类,但是为了方便起见,还是决定把人物类封装到这个引擎里. 为了使这个类更有意义,我还给人物类加了几 ...

  5. 配置JDKAndroid 2D游戏引擎AndEngine

    配置JDKAndroid 2D游戏引擎AndEngine JDK全称为Java Development Kit(也即Java开发包),是用于支持Java 编程的基础.无论是什么编程,只要用到了Java ...

  6. Android 2D游戏引擎AndEngine配置环境

    Android 2D游戏引擎AndEngine配置环境 1.2  配置环境 在任何编程中,都需要一些软件或者硬件的支持.否则,没有硬件软件是不可能存在的,而想要编写对应语言的的程序,这需要对应语言库和 ...

  7. PixiJS - 基于 WebGL 的超快 HTML5 2D 渲染引擎

    Pixi.js 是一个开源的HTML5 2D 渲染引擎,使用 WebGL 实现,不支持的浏览器会自动降低到 Canvas 实现.PixiJS 的目标是提供一个快速且轻量级的2D库,并能兼容所有设备.此 ...

  8. 如何制作一款HTML5 RPG游戏引擎——第四篇,情景对话

    今天我们来实现情景对话.这是一个重要的功能,没有它,游戏将变得索然无味.所以我们不得不来完成它. 但是要知道,使用对话可不是一件简单的事,因为它内部的东西很多,比如说人物头像,人物名称,对话内容... ...

  9. 如何制作一款HTML5 RPG游戏引擎——第三篇,利用幕布切换场景

    开言: 在RPG游戏中,如果有地图切换的地方,通常就会使用幕布效果.所谓的幕布其实就是将两个矩形合拢,直到把屏幕遮住,然后再展开直到两个矩形全部移出屏幕. 为了大家做游戏方便,于是我给这个引擎加了这么 ...

随机推荐

  1. rails开发demo(一)搭建环境

    环境 ubuntu 14.04 为了安装rails4.2 和 ruby 2.2.2,这是目前稳定的最新版本,需要先安装rvm sudo apt-get update sudo apt-get inst ...

  2. JS高级程序设计2nd部分知识要点1

    保存浮点数值需要的内存空间是保存整数值的两倍,因此ECMAScript会不失时机的将浮点数值转换为整数值 浮点数值的最高精度是17位小数 parseInt 字符串转换为数值,可传基数(8,16) pa ...

  3. MongodbBackup Script

    #!/usr/bin/env python # _*_coding:utf-8_*_ # Author: "Edward.Liu" # Author-Email: lonnyliu ...

  4. linux中如何查看进程对应的cpu使用情况?

    使用ps aux | grep <进程名>即可查看指定进程的cpu使用情况.

  5. Android中Spanner获取选中内容和选中位置,根据位置选择对象

    作为一名菜鸟,关于spanner获取选中的内容文字代码,网上后很多 但是根据给出的位置来自动选择对象,这个代码一直没找到 后来找人问了问,才知道就一句话的事,特意在这里记录下 array.xml  X ...

  6. excel if判断时间段早晚班

    =IF(OR(HOUR(B3)={9,10,11,12,13,14,15,16,17,18}),"早班","晚班")

  7. c#实现验证码功能

    一.验证码简介 验证码功能一般是用于防止批量注册的,不少网站为了防止用户利用机器人自动注册.登录.灌水,都采用了验证码技术.所谓验证码,就是将一串随机产生的数字或字母或符号或文字,生成一幅图片, 图片 ...

  8. Design Pattern :Factory and Reflect in java

    interface page {     void Render(); } class pageA implements page {     @Override     public void Re ...

  9. pyhon之Tkinter实例化学习

    Tkinter模块("Tk 接口")是Python的标准Tk GUI工具包的接口,位Python的内置模块,直接import tkinter即可使用. 作为实践, 用Tkinter ...

  10. Oracle导入导出dmp文件

    目 录 目             录...3 1      说明...3 2      导出dmp文件...3 3      导入dmp文件...5 3.1            环境准备...5 ...