据我所知,C#项目可以以2种形式添加到Unity3d中。作为DLL或未编译的项目。
两者的优点和缺点是什么?他们会跨平台工作(Android / iOS / WinPhone)吗?
要编译为DLL - 我只是将MonoDevelop或Visual Studio用于新的类库项目并选择.NET 3.5并编译吗?
如何将未编译的项目添加到Unity3d?
答案 0 :(得分:1)
他们是否可以使用跨平台(Android / iOS / WinPhone)?
是。您可以在Xamarin Studio / MonoDevelop /或Visual Studio中创建库项目。如果您不包含特定于平台的功能,那么它将是跨平台的。
编译为DLL - 我只是将MonoDevelop或Visual Studio用于新的类库项目并选择.NET 3.5并编译吗?
请参阅此tutorial。
答案 1 :(得分:1)
当您在IDE(例如Visual Studio)中打开Unity项目时,它是一个包含两个项目的解决方案,一个用于游戏脚本,另一个用于编辑器脚本。您可以通过所选的IDE向解决方案添加更多项目。为了使其工作,您需要将项目目标框架设置为与Unity(使用Mono的子集)兼容的项目,例如Unity 3.5 .net完整基类库。不幸的是,不支持.NET PCL。
您可以像往常一样在任何项目中引用您的(或第三方)库,只需记住它也必须与Unity兼容。
您的代码可以在所有平台上运行,实际上取决于您使用的内容。有关平台的具体限制,请参阅http://docs.unity3d.com/Manual/PlatformSpecific.html。
答案 2 :(得分:1)
那么一个帖子里的问题太多了。尝试逐一回答: Unity Offical Docs提供了很多帮助:
问题
据我所知,C#项目可以以2种形式添加到Unity3d中。作为DLL或未编译的项目。 要编译为DLL - 我只是将MonoDevelop或Visual Studio用于新的类库项目并选择.NET 3.5并编译吗?
通常,脚本作为源文件保存在项目中并由其编译 每当源更改时Unity。但是,也有可能 使用a将脚本编译为动态链接库(DLL) 外部编译器。然后可以将生成的DLL添加到项目中 它包含的类可以附加到对象上 正常的脚本。
使用脚本通常比使用Unity中的DLL更容易。 但是,您可以访问第三方Mono代码 以DLL的形式提供。在开发自己的代码时,您可以 能够使用Unity不支持的编译器(例如F#) 将代码编译为DLL并将其添加到Unity项目中。也, 您可能希望在没有源的情况下提供Unity代码(对于资产 存储产品,比如说)和DLL是一种简单的方法。 More
有什么利弊
关于dll:
赞成
缺点
如何将未编译的项目添加到Unity3d? Ans:未编译的项目是什么意思?你的意思是脚本?那么它通常只是复制\粘贴在资产文件夹内。