外部库可以认为是别人已经造好的功能,可以大大减少程序开发重复造轮子的问题。在 Unity 游戏开发中,导入外部 DLL(动态链接库)是提升开发效率的核心手段 —— 不管是读取 CSV 的 CsvHelper、处理网络请求的 Newtonsoft.Json,还是自定义的工具类库,都能通过导入 DLL 快速集成到项目中。

Unity 支持的 DLL 类型

动态库有着不同的版本类型,按需选择

  1. .NET Framework 桌面端(Windows/Mac)开发 需匹配 Unity 的.NET 版本(建议 4.x)
  2. .NET Standard 跨平台开发(移动端 / PC / 主机) 兼容性最好,优先选择
  3. .NET Core 高版本跨平台 Unity 2021 + 支持较好,低版本慎用

Unity 中打开 Edit > Project Settings > Player > Other Settings > Configuration,查看Api Compatibility Level,确保 DLL 的框架版本与项目一致

准备 DLL 文件

可以使用自己开发的DLL,也可以通过官方仓库或者第三方开源仓库进行下载
这里推荐一个包管理器NuGet,顾名思义,管理包的工具

放入Unity项目中

Unity 读取 DLL 的核心目录是Plugins(必须手动新建,名称大小写敏感):

  1. 在 Unity 项目的Assets目录下新建文件夹,命名为Plugins
  2. 将 DLL 文件直接拖入Plugins文件夹(可根据自己的分类创建子文件夹)
  3. Unity 会自动识别 DLL,导入后在 Inspector 面板可看到 DLL 的属性。

配置 DLL 的平台兼容性

选中Plugins里的 DLL,在 Inspector 面板设置:

  • Platform Settings:勾选该 DLL 适用的平台(如 Windows、Android),取消不支持的平台
  • CPU:根据目标设备选择(x86、x64、ARM64 等,PC 端选 x64 即可)
  • Api Compatibility Level:确保与项目设置一致(前文提到的位置)

在 C# 脚本中尝试引用 DLL 的命名空间

(以CsvHelper为例子)

1
2
3
4
5
6
7
8
9
10
11
using CsvHelper;
using CsvHelper.Configuration;
public class TestDLL : MonoBehaviour
{
void Start()
{
// 能正常实例化DLL中的类,说明导入成功
var config = new CsvConfiguration(System.Globalization.CultureInfo.InvariantCulture);
Debug.Log("DLL导入成功!");
}
}