docs: sync gameobject tag layer docs
This commit is contained in:
@@ -25,6 +25,22 @@ bool TryGetAvailableScriptClasses(
|
||||
- 只来自当前已发现的应用程序集脚本类缓存。
|
||||
- 不包含抽象类。
|
||||
- 不包含非 `MonoBehaviour` 子类。
|
||||
- 不会在这里重新加载程序集或重新做类型扫描;发现动作发生在 `Initialize()` 期间。
|
||||
- 当前写入到 `descriptor.assemblyName` 的值来自 `m_settings.appAssemblyName`。
|
||||
|
||||
## 为什么这个列表可以直接给 UI 用
|
||||
|
||||
当前实现已经在运行时层做了稳定排序,因此:
|
||||
|
||||
- `GetScriptClassNames()` 可以直接在此基础上再做一层字符串提取。
|
||||
- `ScriptEngine::TryGetAvailableScriptClasses()` 也只需要再补一层程序集过滤和空类名剔除。
|
||||
- Inspector 下拉框或脚本选择器不需要自己再去理解 Mono 反射细节。
|
||||
|
||||
## 真实行为依据
|
||||
|
||||
- `engine/src/Scripting/Mono/MonoScriptRuntime.cpp`
|
||||
- `tests/scripting/test_mono_script_runtime.cpp`
|
||||
- `tests/scripting/test_project_script_assembly.cpp`
|
||||
|
||||
## 相关文档
|
||||
|
||||
|
||||
Reference in New Issue
Block a user