gpt4 book ai didi

dll - 重命名外部 dll 中的类,而不会在 unityEditor 中丢失对它的引用

转载 作者:行者123 更新时间:2023-12-04 14:43:53 34 4
gpt4 key购买 nike

我们有一个包含所有代码的 Visualstudio 解决方案,它与我们的统一项目完全分开。
当我们从 Visualstudio 中将代码构建到 dll 中时,该 dll 会被复制到 unity 项目 plugins 文件夹中,因此我们可以在我们的 unity 项目中使用它中的类。

这一切正常,但问题是当我们在 Visual Studio 解决方案中重命名一个类,重建 dll 并返回到统一项目时,对重命名类的引用在我们的场景和/或预制件中丢失了......

我查看了场景和预制文件,注意到对 dll 中类的引用定义如下:

m_Script:{fileID:698634159,guid:aa20b9c3579870b40bb96d13672546a3,类型:3}

我在论坛上看到 fileID 是根据类文件的命名空间和名称生成的,所以从逻辑上讲,当类重命名时,这个 fileID 会发生变化,unity 不知道它需要引用重命名的类。

有没有办法定义某种硬引用,以便在重命名类时不会丢失引用?或任何其他建议,以防止引用文献丢失。

我也试过在 dll 中包含一个带有 guid 的元文件,但 unity 似乎没有考虑这个元文件,因为它总是使用 dll 的 guid 和生成的 fileId。

最佳答案

Unity 无法自动发现您在 DLL 中重命名了某个类。对于任何形式的项目都是如此:如果您依赖于某些 DLL,并且 DLL 中的类发生了变化,则没有重命名的迹象。

链接它们的最佳方法是在解决方案中添加您的 Unity 项目,并在 Unity 项目和另一个项目之间建立依赖关系。那么也许重构工具会建议您在 Unity 项目中重命名。

关于dll - 重命名外部 dll 中的类,而不会在 unityEditor 中丢失对它的引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29821473/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com