// ENGINE · FINGERENGINE

FingerEngine 游戏引擎

基于 Cocos Creator 3.8.8 深度封装的轻量级小游戏引擎,将多年研发沉淀提炼成清晰、可测试、AI 友好的开发底座。 一套代码,覆盖微信、抖音、快手、App 与 Web。

// OVERVIEW

我们为什么自研引擎

小游戏研发的痛点不是「写不出玩法」,而是每次项目都重复造轮子: 平台差异、资源管线、热更新、联机同步、UI 绑定…… 每一个都足以让团队陷入泥潭。

FingerEngine 把 Cocos Creator 的能力折叠成一套可复用的架构, 让策划、程序、美术在一个稳定的底座上并行推进,把精力留给玩法本身。

  • 实体-组件-系统(ECS)组合式架构,逻辑与表现解耦
  • MVVM 驱动 UI 层,数据绑定开箱即用
  • 热更新与远程资源管线,迭代不等待审核
  • 帧同步 / 状态同步双模式,对战游戏开箱即用
  • 完整 JSDoc,AI 友好的类型安全开发体验
bootstrap.ts — 启动引擎
import { FingerEngine } from 'finger-engine';

const app = new FingerEngine({
  platforms: ['wechat', 'douyin', 'web'],
  scene:     'MainMenu',
  hotUpdate: true,
});

app.launch(() => {
  ui.open('views/LoginView');
  res.load('main_atlas');
  net.connect('ws://game.joyfinger.cn');
});

// ARCHITECTURE

清晰的分层架构

从纯 TypeScript 核心到 Cocos 运行时,每一层职责单一、可独立测试。

🧠

核心层 · 纯 TS

ECS、网络协议、行为树、事件总线、随机数系统、定时器系统,全部与引擎无关,可在 Node 环境单元测试。

🎛️

Cocos 适配层

将 Cocos Creator 3.8.8 能力封装为稳定接口:场景管理、组件生命周期、@ccclass 序列化与加载。

🖼️

MVVM UI 层

数据驱动界面,viewModel 与视图自动双向绑定,弹窗、通知、界面栈统一管理。

📦

资源与热更新管线

基于 Asset Manager 的加载、缓存、压缩与远程热更,版本迭代无需发版等待。

🌐

网络与同步层

WebSocket / HTTP 封装,帧同步与状态同步双模式,断线重连与协议压缩内建。

📊

工具与性能层

性能剖析、日志分级、对象池、批量渲染调度,中低端机型同样保持流畅。

// FEATURES

核心特性详解

每一条能力都来自真实项目的血泪沉淀,开箱即用。

🖥️

多端一键发布

一份代码同时构建微信、抖音、快手、App 与 Web。自动处理平台差异、分包策略、平台登录与支付 SDK 对接,构建即发布,无需逐个平台人工适配。

🧩

ECS 组合式架构

实体-组件-系统三层解耦:系统专注逻辑,组件承载数据,实体自由组合能力。配合对象池与命令缓冲,千人同屏的复杂玩法也能保持清晰与高性能。

🚀

热更新与资源管线

基于 Cocos Asset Manager 强化资源加载、图集合批与远程热更。版本迭代、活动上线不再等待平台审核,灰度发布与回滚一气呵成。

高性能渲染

适配 WebGL / WebGPU 渲染管线,2D 批处理与特效系统深度优化。粒子、战斗特效、大世界场景在中低端机型同样丝滑。

🔗

网络与联机同步

WebSocket / HTTP 协议层封装,内置帧同步、状态同步双模式。断线重连、弱网补偿、协议压缩内建,对战与休闲游戏开箱即用。

🛠️

工具链与调试

内置性能剖析、日志分级与强制类型检查。完整 JSDoc 覆盖每一个公共接口,AI 也能轻松理解并生成符合规范的代码。

// CODE

开箱即用的开发体验

以最少的样板代码,表达最清晰的逻辑。

movement.ts — ECS 组件
import { Comp, Entity, System } from 'finger-engine';

class MoveData extends Comp {
  speed: number = 120;
}

class MoveSystem extends System {
  update(dt: number) {
    this.allOf(MoveData).forEach(e => {
      const pos = e.get(PosData);
      pos.x += e.get(MoveData).speed * dt;
    });
  }
}
hud.ts — MVVM 绑定
import { viewModel, Bindable } from 'finger-engine';

@viewModel
class HUDModel {
  @Bindable score = 0;
  @Bindable combo = 0;
}

// 视图自动更新,无需手动 set
hud.data.score += 100;
hud.data.combo = 3;

TECH STACK

技术底座

Cocos Creator 3.8.8 TypeScript WebGL / WebGPU Asset Manager JSDoc 全注释 MIT License

// GET STARTED

用 FingerEngine 快速启动项目

无论是授权使用,还是让我们为你定制玩法,我们都欢迎。