Chinese | English
Eva.js 是一个专注于开发互动游戏项目的前端游戏引擎。
易用:Eva.js 提供开箱即用的游戏组件供开发人员立即使用。是的,它简单而优雅!
高性能:Eva.js 由高效的运行时和渲染管道 (Pixi.JS) 提供支持,这使得释放设备的全部潜力成为可能。
可扩展:得益于 ECS(实体-组件-系统)架构,你可以通过高度可定制的 API 扩展您的需求。唯一的限制是你的想象力!
你可以在官方网站 eva.js.org 找到 Eva.js 的文档, 在 文档仓库 提交 PR 为 Eva.js 文档进行查漏补缺。
提供两种使用方式,一种是基于NPM,另外一种直接在浏览器中使用外链JS文件。
npm i @eva/eva.js @eva/plugin-renderer @eva/plugin-renderer-img --save
<script src="https://unpkg.com/@eva/[email protected]/dist/EVA.min.js"></script>
<canvas id="canvas" ></canvas>
import { Game, GameObject, resource, RESOURCE_TYPE } from '@eva/eva.js';
import { RendererSystem } from '@eva/plugin-renderer';
import { Img, ImgSystem } from '@eva/plugin-renderer-img';
resource.addResource([
{
name: 'imageName',
type: RESOURCE_TYPE.IMAGE,
src: {
image: {
type: 'png',
url:
'https://gw.alicdn.com/tfs/TB1DNzoOvb2gK0jSZK9XXaEgFXa-658-1152.webp',
},
},
preload: true,
},
]);
const game = new Game({
systems: [
new RendererSystem({
canvas: document.querySelector('#canvas'),
width: 750,
height: 1000,
}),
new ImgSystem(),
],
});
const image = new GameObject('image', {
size: { width: 750, height: 1319 },
origin: { x: 0, y: 0 },
position: {
x: 0,
y: -319,
},
anchor: {
x: 0,
y: 0,
},
});
image.addComponent(
new Img({
resource: 'imageName',
})
);
game.scene.addChild(image);
按照 Issue Reporting Checklist 提交 issue. 不符合准则的问题可能会立即关闭。
版本记录.
MIT, See LICENSE file.