Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/wechat-miniprogram/minigame-canvas-engine
轻量级canvas2d渲染引擎,开放数据域开发解决方案。
https://github.com/wechat-miniprogram/minigame-canvas-engine
Last synced: 6 days ago
JSON representation
轻量级canvas2d渲染引擎,开放数据域开发解决方案。
- Host: GitHub
- URL: https://github.com/wechat-miniprogram/minigame-canvas-engine
- Owner: wechat-miniprogram
- License: mit
- Created: 2019-11-18T10:04:37.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2024-10-25T07:27:11.000Z (3 months ago)
- Last Synced: 2024-10-25T13:56:58.015Z (3 months ago)
- Language: JavaScript
- Homepage: https://wechat-miniprogram.github.io/minigame-canvas-engine/
- Size: 31.4 MB
- Stars: 274
- Watchers: 20
- Forks: 63
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
轻量级canvas渲染引擎。
[![npm version](https://badge.fury.io/js/minigame-canvas-engine.svg)](https://badge.fury.io/js/minigame-canvas-engine)
[![](https://img.shields.io/npm/l/minigame-canvas-engine)](https://github.com/wechat-miniprogram/minigame-canvas-engine)## 简介
当我们开发一个canvas应用的时候,出于效率的考量,免不了要选择一个渲染引擎(比如**PixiJS**)或者工具链更完备的游戏引擎(比如**Cocos Creator**、**Layabox**)。
渲染引擎通常会有Sprite的概念,一个完整的界面会由很多的Sprite组成,如果编写复杂一点的界面,代码里面会充斥创建精灵、设置精灵位置和样式的“重复代码”,最终我们得到了极致的渲染性能却牺牲了代码的可读性。
为了解决这个问题,游戏引擎通常会有配套的IDE,界面通过拖拽即可生成,最终导出场景配置文件,这大大方便了UI开发,但是游戏引擎一般都很庞大,有时候我们仅仅想开发个好友排行榜。
如果有一款渲染引擎,既能用配置文件的方式来表达界面,又可以做到轻量级,将会大大满足我们开发轻量级 canvas 应用的场景,minigame-canvas-engine 应运而生(后面简称 **Layout** )
**Layout 的目标在于用 Web 的开发方式来开发简单的 Canvas 应用。**
有兴趣可以查看详细原理介绍[文章](https://segmentfault.com/a/1190000021297495?_ea=27021986)。
## 文档
详见[文档](https://wechat-miniprogram.github.io/minigame-canvas-engine/)。## 更新日志
详见[CHANGELOG](./CHANGELOG.md)## web端调试
为了方便调试,可以基于 codepen [模板](https://codepen.io/pen?template=VwEeLKw) 构建demo,codepen 上有一系列[在线 demo](https://codepen.io/collection/PYrdpO)。