无法在Inspector中为AddMonoBehavioursModifierType数组赋值MonoBehaviour脚本
Mapbox AddMonoBehavioursModifiersType 数组赋值报错解决方案
操作时在Inspector窗口为
AddMonoBehavioursModifiersType脚本的数组赋值MonoBehaviour时,收到错误提示*「Selected object is not a MonoBehaviour type!」*,操作符合官方规范,理论上可正常执行。
运行环境
- Unity版本:2020.3.1f1 LTS
- 脚本运行时版本:.NET 2.0
- 脚本后端:Mono
- API兼容级别:.NET 2.0
- Mapbox SDK版本:2.1.1
- 目标构建平台:PC、Mac和Linux独立程序
- 操作目标:为Map Prefab的每个已渲染GameObject分配MonoBehaviour脚本
复现步骤
- 编辑器内右键选择「创建>C# Script」新建自定义脚本
- 编辑器内右键选择「创建>mapbox>modifiers>add MonoBehaviours Modifier」新建Modifier资源
- 打开新建的Mapbox Monobehaviour Modifier的Inspector面板,点击types数组的+号,将第一步新建的C#脚本拖入赋值,此时弹出上述错误提示
相关日志
无对应错误日志输出
问题成因
该问题由Unity编辑器资源缓存异常导致,编辑器未完成新建脚本的类型注册,无法正确识别脚本的MonoBehaviour继承关系,因此触发了Mapbox组件的类型校验规则,抛出类型不匹配错误。
解决方案
重启Unity和电脑即可自动清理异常缓存,恢复类型识别能力,问题会自动解决。
内容的提问来源于stack exchange,提问作者Setz
相关产品推荐
相关产品推荐

