# 集成第三方代码库（插件）

> Add third-party code libraries to your Unity project.

在 Unity 中，通常使用**脚本**来创建功能，但也可使用**插件**形式包含 Unity 外部创建的代码。可以在 Unity 中使用两种不同类型的插件：

* **托管插件**：使用 Visual Studio 等工具创建的[托管 .NET 程序集](/engine/6000.0/manual/scripting/environment-and-tools/overview-of-dot-net-in-unity/dotnet-profile-support.md)。此类插件仅包含 .NET 代码，因此无法访问 .NET 库不支持的任何功能。有关更多信息，请参阅 [Microsoft 的托管代码文档](https://docs.microsoft.com/en-us/dotnet/standard/managed-code)。
* **原生插件**：特定于平台的原生代码库。此类插件可访问操作系统调用和第三方代码库等功能；Unity 无法通过其他方式使用这些功能。

Unity 使用的标准 .NET 工具可以访问托管代码来编译脚本。托管插件代码与 Unity 脚本代码之间的唯一区别是插件是在 Unity 外部编译的，因此 Unity 可能无法访问源代码。使用原生插件时，Unity 的工具无法像访问托管库一样访问第三方代码库。例如，如果忘记将托管插件文件添加到项目中，您将收到标准编译器错误消息。但是，如果忘记向项目添加原生插件文件，则只有在尝试运行项目时才会收到错误报告。

以下页面介绍了如何创建插件以及在 Unity 项目中使用插件：

| **主题**                                                                                                      | **描述**                           |
| ----------------------------------------------------------------------------------------------------------- | -------------------------------- |
| [导入和配置插件](/engine/6000.0/manual/scripting/compilation-and-code-reload/plug-ins/plug-in-inspector.md)        | 导入和配置托管或原生插件。                    |
| [托管插件](/engine/6000.0/manual/scripting/compilation-and-code-reload/plug-ins/managed.md)                     | 有关使用托管插件的详细信息。                   |
| [原生插件](/engine/6000.0/manual/scripting/compilation-and-code-reload/plug-ins/native.md)                      | 有关使用原生插件的详细信息。                   |
| [构建适用于桌面平台的插件](/engine/6000.0/manual/scripting/compilation-and-code-reload/plug-ins/for-desktop.md)         | 为 macOS、Windows 和 Linux 部署本机代码库。 |
| [低级原生插件接口](/engine/6000.0/manual/scripting/compilation-and-code-reload/plug-ins/native-plugin-interface.md) | 在原生插件中实现低级渲染。                    |

## 其他资源##additional-resources

* [Unity .NET 功能](/engine/6000.0/manual/scripting/environment-and-tools/overview-of-dot-net-in-unity.md)
