重要的是要了解MonoBehaviour有一个参考 MonoScript和MonoScripts只包含所需的信息 找到特定的脚本类。这两种类型的Object都不包含 脚本类的可执行代码。
MonoScript包含三个字符串:程序集名称,类名, 和命名空间。
这是否意味着,在构建期间,例如,从MonoBehaviour继承的每个c#类都会有一个指向 Assembly-CSharp.dll 中相应位置的MonoScript?< / p>
答案 0 :(得分:0)
它看起来是这样。请注意,它也适用于ScriptableObjects:https://docs.unity3d.com/ScriptReference/MonoScript.html?_ga=2.112551556.1460905390.1600095105-379318471.1582836001
请记住,除了您提到的组件外,还有其他一些程序集,例如“ first pass”和“ Editor”变体。同样来自Unity的文档:
“ MonoBehaviour提供了一个链接到MonoScript的包装器。MonoScript是内部数据类型,Unity用于在特定程序集和名称空间中保存对特定脚本类的引用。MonoScript不包含任何实际的可执行代码。”
这听起来很像你说的。此摘录可在以下位置找到:https://learn.unity.com/tutorial/assets-resources-and-assetbundles#5c7f8528edbc2a002053b5a6。您可能需要一个帐户才能访问它。