包含此页的版本:
不含此页的版本:
您可以使用 Emscripten 编译库并在 Unity 中使用这些库。从封装C++C++代码的库调用函数比直接从插件在 Unity 外部创建的一组代码,用于在 Unity 中创建功能。可以在 Unity 中使用两种插件:托管插件(使用 Visual Studio 等工具创建的托管 .NET 程序集)和本机插件(特定于平台的本机代码库)。更多信息
请参阅术语表目录。好处包括:
要编译可用作 Unity 插件的静态库,请执行以下作:
您必须下载与您的 Unity 版本相匹配的 Emscripten SDK。
要为您的 Unity 版本找到合适的 Emscripten 版本,请参阅 Emscripten 的 Web 原生插件。
有关如何安装 Emscripten SDK 的下载链接和更多信息,请参阅下载并安装 (Emscripten)。
Emscripten 可以替代 gcc 或 clang 编译器。如果您有现有的 C/C++ 代码,则需要在 C++ 项目中进行以下更改:
有关更多信息,请参阅 Emscripten 文档中关于编译和运行项目的文档。
如果您的 Unity 项目具有以下 Player 设置(菜单:Player > Edit > Project Settings),则可能需要向 C/C++ 项目添加一些编译器选项。
| 财产 | 描述 |
|---|---|
| 启用例外 | 如果此属性设置为 None,请添加编译器选项“-fno-exceptions”。 |
| 启用本机 C/C++ 多线程 | 如果启用了此属性,请包含编译器选项“-pthread”。 |
| 启用 WebAssembly 2023 | 如果启用了此属性,请包括以下编译器选项:
|
编译静态库文件,然后将文件导入 Unity 项目中的Assets/Plugins文件夹。
注意:如果您没有插件文件夹,则需要创建自己的文件夹。
您可以从 Unity C# 调用静态库函数脚本一段代码,允许您创建自己的组件、触发游戏事件、随时间修改组件属性以及以您喜欢的任何方式响应用户输入。更多信息
请参阅术语表.调用函数的方法与从 C# 脚本调用 C 或 C++ 函数的方法相同。有关示例,请参阅从 Unity C# 脚本调用 C/C++/C# 函数。