UE杂项(Mass 崩溃排查)

崩溃场景1:

创建一个粒子组件,组件设置成AutoDestory, 把粒子组件存储在Mass片段中,添加Mass 处理器遍历访问粒子组件进行组件位置更新。

粒子System 设置为infinite 无限时间,每个发射器设置成Once 模式。

有概率在遍历粒子组件的时候崩溃

崩溃原因:

粒子生命周期:所有发射器都结束的时候,会触发粒子系统完成事件,如果设置是AutoDestory的会自动销毁组件。

在组件销毁后,使用 控制台 obj gc 立即触发gc,Mass 片段中数据不会有gc 引用,不会变成空指针

崩溃场景2:

主线程执行Mass组件Disable 的时候有概率崩溃,崩溃在MassEntityManager::BatchDestroyEntityChunks 的CHECK_SYNC_API() 上

崩溃原因:Mass 处理器是有配置多线程的,同步销毁实体的时候,如果刚好Mass 处理器在其它线程执行就会出现这个问题。需要在MassAgentSubsystem 中去除同步DestroyEnities, 直接用EntityManager->Defer().DestroyEnities() 方式销毁对象

其它:

FInstancedStuct 存储泛型结构体。(存储结构体类型指针和根据结构体大小用FMemory::Malloc 分配的空间地址)

FInstancedPropertyBag 成员是FInstancedStuct,存放的是UPropertyBag 结构体。UPropertyBag 里面有属性列表,FInstancedStuct 分配的空间中对应的偏移位置上存放数据内容。

低电源模式日志:Low Power Mode Changed

相关推荐
努力学习的小廉1 天前
UE5 入门系列(三):核心框架类全解析
ue5
平行云2 天前
建筑BIM/3D可视化轻量级实时评审与分享方案
unity·ue5·3dsmax·实时云渲染·云桌面·云游戏·建筑bim
BugPhysician7 天前
影之刃零首发UE崩溃排查:着色器缓存、虚拟内存与驱动版本
ue5·影之刃零·影之刃零报错·影之刃零进不去·ue崩溃·ue引擎崩溃·ue5引擎崩溃
电子云与长程纠缠9 天前
UE5魂系游戏开发教程05
开发语言·学习·游戏·ui·ue5
fanfan_hongyun9 天前
UE5.1 蓝图调用C++方法
ue5
易知微EasyV数据可视化9 天前
UE5 中接入 GDAL:从vcpkg编译到插件打包
ue5
努力学习的小廉9 天前
UE5入门系列(一):环境搭建.md
ue5
fanfan_hongyun9 天前
【UE5.1 创建C++文件】
c++·ue5
努力学习的小廉9 天前
UE5 入门系列(二):编辑器基础操作速通
ue5·编辑器
Дерек的学习记录10 天前
Unreal Engine 5:开关门实现和流程控制
开发语言·学习·ue5