跳到主要内容
基于 Bevy 构建
Bevy

你的浏览器游戏, 编译为原生应用

当项目准备好离开标签页时,Engine 会将其导出,生成一个 Rust 语言的 Bevy 项目——再编译为 Windows、macOS、Linux 或 Android 版本。

目标平台

Bevy 0.19

许可证

MIT / Apache 2.0

语言

Rust (rustc ≥ 1.95)

渲染器

wgpu

Bevy 是什么

Bevy 是一款用 Rust 编写的游戏引擎,采用 MIT / Apache 2.0 双许可证,免费且开源。它围绕实体-组件-系统(ECS)架构构建,通过 wgpu 进行渲染——这正是 WebGPU 底层所依赖的同一套图形抽象层。它编译为真正的原生二进制文件,无需浏览器,也无需附带任何运行时。

为什么还需要第二个引擎

Babylon.js 是 aukimi 得以实现的关键:一个只需打开网址就能使用的 3D 应用。但一款完成的游戏往往必须以文件的形式存在——上架商店页面、交到玩家手中,或是脱离标签页独立运行。Engine 不会让你在别处重新构建项目,而是直接完成转换:你在浏览器中创作的场景,会变成一个可编译为桌面或移动应用的 Bevy 项目。

究竟导出了什么

构建过程不是给场景截图,而是真正提取它:几何体和材质以标准 GLB 格式导出,引擎知道但 glTF 无法承载的一切(地形、植被、天空、后期处理、实体数据、场景设置)则以结构化 JSON 文件一并导出,一个完整的 Rust 项目由这两份文件生成而来。这个项目是一个普通的 Cargo 项目——你可以直接阅读它的源码。

  • scene.glb——几何体、材质、动画
  • scene.json——地形、植被、灯光、设置
  • 一个面向 Bevy 0.19 生成的 Cargo 项目

你的脚本会一同带走

在 Engine 中编写的玩法脚本不会被手动重写为 Rust,也不会被丢弃。生成的项目内嵌了一个 JavaScript 运行时(QuickJS),并绑定了同一套脚本 API,因此在浏览器中编写的脚本能在原生构建中原样运行。让这两套 API 保持一致,是代码库中一以贯之的规则,而不是事后补上的补丁。

四个目标平台,还有一个诚实地标注为暂缺

Windows 可执行文件、macOS 应用程序包、Linux AppImage 和 Android APK,是构建面板目前提供的目标平台。iOS 已列出但处于关闭状态——它对工具链的要求,不是靠一个转圈的加载动画就能掩盖过去的。如果构建服务器无法处理你选择的目标平台,你得到的会是可自行编译的 Rust 项目源码,而不是一条失败提示。

  • Windows 10/11 可执行文件
  • macOS 应用程序包
  • Linux AppImage
  • Android APK(Android 8 及以上)

无法迁移的部分,会明确告诉你

两种渲染器终究是两种渲染器。浏览器预览中的一些效果,在 Bevy 一侧目前还没有对应实现——烘焙光照贴图和局部光照探针便是其中之二。导出器会生成一份转换报告,清楚列出哪些内容无法迁移,而不是悄悄将其丢弃,让你在成品构建里才发现差异。一个看得见的缺口,才是一个能提前规划的缺口。

把你的项目构建成一个真正的二进制文件

在浏览器中制作游戏,以应用程序的形式发布。

支持项目