Unity 和 Unreal Engine (UE) 都支持将游戏和应用导出为 WebAssembly (Wasm) 格式,以便在网页上运行。WebAssembly 提供了一种方法,使得编译后的代码能够在现代网络浏览器中以接近原生性能运行。
Unity 和 WebAssembly
Unity 通过其 WebGL 构建目标支持 WebAssembly。当你在 Unity 中选择 WebGL 作为目标平台时,Unity 会将游戏编译成 HTML5 和 JavaScript,其中核心游戏逻辑是通过 WebAssembly 实现的。这使得 Unity 游戏可以在不需要任何插件的情况下直接在浏览器中运行。
Unreal Engine 和 WebAssembly
Unreal Engine 也支持导出为 HTML5,其中包括 WebAssembly 支持。UE 使用 Emscripten 编译器将 C++ 代码转换为 WebAssembly,从而使得复杂的 3D 游戏能够在网页中运行。
WebAssembly 示例
以下是一个简单的 WebAssembly 示例,展示了如何使用 C 语言编写代码,然后编译为 WebAssembly 模块,并在网页中加载和运行这个模块。
1. C 代码 (example.c)
#include