旧Asset Actions系统通常继承FAssetTypeActions_Base并实现核心OpenAssetEditor方法,并且一般在模块中通过IAssetTools::RegisterAssetTypeActions(MakeShareable(new FAssetTypeActions_Xxx()))手动实现注册,由于FAssetTypeActions_Base并非U类而是纯Cpp类,其智能指针体系与UE的管理方式不兼容,经常会导致自定义资产在某些复杂自定义插件中失效或者内存溢出。
UE5.2版本之后,官方逐步使用Asset Definitions取代过去旧系统Asset Actions
社区原文。其在5.2之后,引擎删除了几乎所有由旧资产操作系统的构建方式,全部转换为新系统,且在未来只对旧系统做兼容
小狮博客