本文主要介绍了Unity打包代码到DLL的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
使用Unity API PlayerBuildInterface.CompilePlayerScripts 将项目中的代码生成为 DLL 程序集
在 Editor 文件夹下新建脚本 CompileDll
using UnityEngine;
using UnityEditor;
using UnityEditor.Build.Player;
using System.IO;
public class CompileDll
{
// 菜单栏添加按钮
[MenuItem("Tools/CompileDll")]
static void Compile()
{
// 设置需要打DLL 的平台
BuildTarget target = BuildTarget.StandaloneWindows64;
ScriptCompilationSettings scriptCompilationSettings = new ScriptCompilationSettings();
scriptCompilationSettings.group = BuildPipeline.GetBuildTargetGroup(target);
scriptCompilationSettings.target = target;
// 获取 dll 输出目录
string outDir = Application.dataPath;
outDir = outDir.Substring(0, outDir.IndexOf("Assets"));
outDir = string.Format("{0}DLL", outDir);
if (!Directory.Exists(outDir))
{
Directory.CreateDirectory(outDir);
}
// 编译DLL
ScriptCompilationResult scriptCompilationResult = PlayerBuildInterface.CompilePlayerScripts(scriptCompilationSettings, outDir);
foreach(var ass in scriptCompilationResult.assemblies)
{
Debug.LogFormat("compile assemblies:{0}/{1}", outDir, ass);
}
}
}
点击 Tools->CompileDll 按钮,在 代码中 outDir 目录下生成所有 dll 以及 对应的 .pdb
如上 DLL 程序集是如何确定名字的?
如上 AA.dll
在 需要生成 AA.dll 的 C# 脚本目录下,新建 AA.asmdef
在 C# 脚本所在目录 右键 Create -> Assembly Definition
然后生成一个 .asmdef 的文件,选择文件在 Inspector 面板输入名字
然后在 AA.asmdef 目录新建一个 Npc.cs
选择 Npc.cs 看 Inspector 面板可以看到 Npc.cs 归属于 AA.dll 程序集
具体细节可以学习了解 Unity asmdef 文件的创建以及作用
在项目中任意选一个 C# 脚本,都可以在 Inspector 面板看到它归属的 dll 程序集
这就是上面执行编译导出的 dll 的来源
到此这篇关于Unity打包代码到DLL的实现的文章就介绍到这了,更多相关Unity打包代码到DLL内容请搜索织梦云以前的文章希望大家以后多多支持织梦云!
本文标题为:Unity打包代码到DLL的实现


基础教程推荐
- 使用c#从分隔文本文件中插入SQL Server表中的批量数据 2023-11-24
- c#读取XML多级子节点 2022-11-05
- c#中利用Tu Share获取股票交易信息 2023-03-03
- C# Winform实现石头剪刀布游戏 2023-01-11
- C#中类与接口的区别讲解 2023-06-04
- C#通过GET/POST方式发送Http请求 2023-04-28
- C#集合查询Linq在项目中使用详解 2023-06-09
- Unity shader实现多光源漫反射以及阴影 2023-03-04
- C# – NetUseAdd来自Windows Server 2008和IIS7上的NetApi32.dll 2023-09-20
- 京东联盟C#接口测试示例分享 2022-12-02