【发布时间】:2020-09-14 23:18:51
【问题描述】:
根据Unity tutorial,我正在尝试了解 Monoscript 是做什么的
了解 MonoBehaviour 引用 一个 MonoScript,而 MonoScripts 只包含所需的信息 找到特定的脚本类。两种类型的 Object 都不包含 脚本类的可执行代码。
MonoScript 包含三个字符串:程序集名称、类名称、 和一个命名空间。
这是否意味着,例如,在构建期间,从 MonoBehaviour 继承的每个 c# 类都会有一个 MonoScript 指向 Assembly-CSharp.dll 中的相应位置?
【问题讨论】:
-
它似乎没有从 MonoScripts 继承任何东西,但似乎是一种存储类型信息(程序集、名称和命名空间)的数据类型。我认为它是项目中用于轻松检查和定位类型的类型指针。例如,AssetBundle 不包含任何代码,只有 MS。当加载到应用程序上时,MS 包含在项目中定位可执行代码的信息。然后用不在项目中的脚本加载 AB 将崩溃。就像将引用作为参数传递一样,您不会传递整个对象,因此它更轻。但参考知道在哪里可以找到真实数据。
-
对不起,我的意思是继承自monobehevior
-
看起来确实如此。 MonoBehaviour 类获取它们的 MonoScript 对象,以便 Unity 可以在程序集中找到它们。您是出于好奇而询问,还是有一个您认为可以通过了解更多信息来解决的特定问题?
-
是的,我问的是好奇心,试图了解文件系统lol
标签: unity3d