Unity中调用DLL库

简介: DLL —— Dynamic Link Library(动态链接库文件),这里以Window平台为例。   Unity支持的两种语言生成的DLL库(C++、C#),这里以C#为例,C++网上可以搜索很详细的资料。
+关注继续查看

DLL —— Dynamic Link Library(动态链接库文件),这里以Window平台为例。

 

Unity支持的两种语言生成的DLL库(C++、C#),这里以C#为例,C++网上可以搜索很详细的资料。

 

1) 添加引用关系

如果有对UnityEngine、UnityEditor的引用,需要先添加引用关系。

image

路径通常位于Unity安装目录下的Editor/Data/Managed路径下。

 

2) 生成DLL文件

建立项目时,选择“类库”。目标框架.Net Framework的版本,只能选择3.5及以下版本

image

 

 

3) 在项目中引用DLL文件

Unity会自动加载相应的DLL文件,所以DLL文件只要存放于Assets目录下即可,当然为了统一管理,一般放在Plugins目录下。

 

这里有一个需要注意的点,如果DLL文件放在Editor下,那么只能是Editor目录下的C#文件才可以引用,如果想在项目运行时的C#中进行引用,那DLL文件就不能放在Editor目录下。以上目录只与名字相关,与层级无关,路径可以是Assets/a/b/c/d/e/../XX.DLL

 

放置好DLL后,注意刷新Visual Studio中的解决方案。

 

 

参考链接:

 在 Unity 工程 (Project) 中使用 DLL(动态库)

 unity中调用dll文件总结

在Unity3D里使用DLL

 

 

如何查看DLL中的方法是否已经导出呢?

C#:dnSpy

C++:depends

 

 

理解如何使用之后,我们做一个示例:在Unity加载并解析Excel文件。这里用的库是 EPPlus ,使用的版本是3.5

image

假设我们只会在编辑器中使用,那么可以将DoNet35目录下的二个文件,放到这样的目录中:ThirdParty/EPPlus/Editor  这样就只有编辑器里才能使用到这个类库。使用方法也很简单

ExcelPackage package = new ExcelPackage(new FileInfo(filePath));

List<string> keys = new List<string>();
List<string> values = new List<string>();

ExcelWorksheet sheet = package.Workbook.Worksheets[1];
int rows = sheet.Dimension.Rows;
for (int row = 2; row <= rows; row++)
{
    string key = sheet.Cells[row, 1].Value.ToString();
    string value = sheet.Cells[row, 2].Value.ToString();

    keys.Add(key);
    values.Add(value);
}

//

 

在Unity中能读取excel就很方便了,这样就比较方便地做技能编辑器、加载数据配置、提取游戏中的文字等。

目录
相关文章
|
2月前
|
算法 C++
解决方案-Visual Studio生成库(DLL&LIB)以及如何调用
解决方案-Visual Studio生成库(DLL&LIB)以及如何调用
|
6月前
Qt对动态库(*.dll)的封装以及使用
Qt对动态库(*.dll)的封装以及使用
87 0
|
网络协议 C# C++
VS2017编写MFC库以及使用Qt调用MFC库方法
VS2017编写MFC库以及使用Qt调用MFC库方法
VS2017编写MFC库以及使用Qt调用MFC库方法
|
计算机视觉
Qt实用技巧:win将ffmpeg、opengl、osg等各种库封装成qt模块,运行需要dll,增加自动拷贝运行库到exe目录执行脚本
Qt实用技巧:win将ffmpeg、opengl、osg等各种库封装成qt模块,运行需要dll,增加自动拷贝运行库到exe目录执行脚本
|
编译器 Linux C语言
【C 语言】动态库封装与设计 ( Windows 动态库简介 | Visual Studio 调用动态库 )
【C 语言】动态库封装与设计 ( Windows 动态库简介 | Visual Studio 调用动态库 )
204 0
【C 语言】动态库封装与设计 ( Windows 动态库简介 | Visual Studio 调用动态库 )
|
编译器 C# 图形学
Unity与 DLL文件 ☀️| 怎样使用VC++生成一个DLL文件并调用!(包括 在VS 中调用 和 在Unity中调用)
📢前言 🎬通过VC 生成DLL文件 🎥在VS中生成DLL文件 🏳️‍🌈第一步:新建一个dll项目 🏳️‍🌈第二步:新建一个`.h头文件`和`.cpp源文件` 🏳️‍🌈第三步:在`.h头文件`和`.cpp源文件`中编写代码 🏳️‍🌈第四步:生成dll和lib文件 🎥在VS中进行调用DLL文件 🚩第一步:先来新建一个项目 🚩第二步:复制firstDLLTest.dll和firstDLLTest.lib文件和上一个项目的头文件firstDLLTest.h 🚩第三步:在新项目里面添加C++代码 🚩第四步:添加头文件firstDLLTest.h和firstDLLTest.
Unity与 DLL文件 ☀️| 怎样使用VC++生成一个DLL文件并调用!(包括 在VS 中调用 和 在Unity中调用)
|
C# 图形学 C++
Unity与 DLL文件 ☀️| 怎样使用 C# 类库 生成一个DLL文件 并 调用!
📢前言 🎬生成DLL文件 🎥使用 C#类库 将Unity中的脚本打包成 DLL文件 并调用 🏳️‍🌈第一步:打开Visual Studio之后,新建一个项目 🏳️‍🌈第二步:选择类库(.NET Framework),改个名字,选择一个位置路径 🏳️‍🌈第三步:然后在创建的脚本中简单写一点代码,如下所示 🏳️‍🌈第四步:然后在解决方案资源管理器右键这个脚本 -> 添加 -> 引用 🏳️‍🌈第五步:然后点击浏览,找到Unity安装路径 -> Editor -> Data -> Managed 下的这两个DLL 文件,点击添加!
Unity与 DLL文件 ☀️| 怎样使用 C# 类库 生成一个DLL文件 并 调用!
|
编译器 C语言
QT应用编程: Window系统下QT5创建DLL动态库并完成调用
QT应用编程: Window系统下QT5创建DLL动态库并完成调用
289 0
QT应用编程: Window系统下QT5创建DLL动态库并完成调用
|
XML C# 图形学
Unity 使用VisualStuido将C#脚本封装打包DLL使用
为了方便开发,不破坏写好工具的封装性,我们经常讲C#脚本打包成DLL使用,操作流程如下 创建项目,注意选择Net Framework版本,过高Unity无法支持 添加在脚本中使用的unity引用,在封装的脚本中我只使用了UnityEngine.
1937 0
相关产品
云迁移中心
推荐文章
更多