UE4 快速找到奔溃的原因

大家使用UE4过程中经常奔溃,那么问题的原因有哪些,接下来就整理了一些常见奔溃原因
第一点:灯光,UE4 的灯光分为静态光,固定光,可移动光,三者消耗资源的的大小为,静态光<固定光<可移动光,所以UE4崩溃的原因可能是加入静态或者固定灯光过多,没有进行烘焙,导致一运行就奔溃,同时UE4无法产生阴影的原因也可能是没有构建烘焙灯光。
解决办法构建灯光,建议质量选择高级(测试的话选择预览比较快)。
UE4 快速找到奔溃的原因_第1张图片
第二点:场景中的资源,我们知道UE4引擎打开,加载方式是先Preinit(预加载)然后再Init(初始化),
PreInit主要工作:
1.设置路劲:设置当前路劲,当前工作目录,游戏工程路径
2.设置标准输出:设置GLog输出设备,是输出到命令出还是何处
预初始化过程也会判引擎的启动模式,是游戏模式启动还是服务器模式启动
完后之后会调用LoadCoreModules,随后所有的PreInitModules会被启动出来,这些模块是,引擎模块,渲染模块,动画模块,Slate渲染模块,salter核心模块,贴图压缩模块,地形模块,这些模块加载完成之后,APPInit会被调用,引擎正式进入初始化阶段。
发生崩溃的原因:在加载模块的时候某个资源为空,导致奔溃,具体的可能是场景中的某个资源静态网格物体没有或者是材质贴图丢失引起的奔溃。
解决办法:找某个资源删除
UE4 快速找到奔溃的原因_第2张图片
第三点:程序上的蓝图错误,可能原因是在删除某些资源时,蓝图引用到了,删除资源之后编译蓝图没报错,导致在加载的时候资源缺失奔溃。
解决办法:打包看打包输出日志,查找错误
UE4 快速找到奔溃的原因_第3张图片

第四点:C++代码错误,逻辑上出现BUG,指针为空为野指针,运行奔溃。
解决办法:断点调试找个有问题的位置
UE4 快速找到奔溃的原因_第4张图片
综上所述,原因有以下四点,第一灯光没有构建烘焙,第二初始化资源丢失,第三蓝图加载资源丢失,第四C++代码BUG出现野指针。

你可能感兴趣的:(ue4)