今天小编给大家分享一下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 程序集
在项目中任意选一个 C# 脚本,都可以在 Inspector 面板看到它归属的 dll 程序集
这就是上面执行编译导出的 dll 的来源
以上就是“Unity怎么打包代码到DLL”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。