ECS 架构
面向数据的实体-组件-系统设计。通过可复用的组件组合游戏对象,用系统驱动行为。
ECS 架构
面向数据的实体-组件-系统设计。通过可复用的组件组合游戏对象,用系统驱动行为。
WebGL 渲染
C++ 渲染管线编译为 WebAssembly。开箱即用的精灵、相机、Spine 动画和自定义着色器。
跨平台
一套代码同时运行在 Web 浏览器和微信小游戏,通过平台适配器实现。
TypeScript SDK
类型安全的 API:defineSystem、defineComponent、Query — 用地道的 TypeScript 编写游戏逻辑。
定义自定义组件,在场景编辑器中挂到实体上,然后编写系统:
import { defineComponent, defineSystem, addSystem, Query, Res, Time, Mut, LocalTransform} from 'esengine';
const Speed = defineComponent('Speed', { value: 200 });
addSystem(defineSystem( [Res(Time), Query(Mut(LocalTransform), Speed)], (time, query) => { for (const [entity, transform, speed] of query) { transform.position.x += speed.value * time.delta; } }));