UE4/UE5 照明构建失败 “Lightmass crashed”解决“数组索引越界”

在构建全局光照时,经常会出现"Lightmass crashed"的错误,导致光照构建失败。本文将分析这一问题的原因,并给出解决建议。

UE4 版本4.26

报错如下:

<None> === Lightmass crashed: ===

Assertion failed: (Index >= 0) & (Index < ArrayNum) File:d:\\build\\++ue4\\sync\\engine\\source\\runtime\\core\\public\\Containers/Array.h Line: 611

Array index out of bounds: 60 from an array of size 36

0x00007ffdb619cf19 KERNELBASE.dll!UnknownFunction \[\].......

一、问题原因

"Lightmass crashed"在技术层面是由于Lightmass运算时数组越界造成的崩溃。简单来说,就是Lightmass在进行光照运算时,需要访问的数组索引超出了数组范围,导致程序崩溃。

造成这一问题的原因通常有:

  1. 光照贴图分辨率过大,超过Lightmass所能处理的范围。

  2. 系统内存不足,无法支持Lightmass的运算需求。

  3. Lightmass进程冲突,多开swarm agent造成进程混乱。

二、解决方法

针对上述原因,可以从以下几点着手解决"Lightmass crashed"的问题:

  1. 适当降低光照贴图的分辨率,比如从4096降到2048。

  2. 升级系统内存,至少要确保有8GB以上RAM。

  3. 清除Derived Data缓存,删除Cache文件夹重新构建。

  4. 在Swarm Agent菜单中进行Cache清理和Validate验证。

打开 Swarm Agent > Menu > Cache > Clean,单击清理,然后单击Validate验证。

  1. 检查任务栏Swarm Agent 进程,避免重复开启造成冲突。

  2. 降低光照质量设置,减小Lightmass运算量。

  3. 更新UnrealEngine版本,获取修复bug的版本。

综上,"Lightmass crashed"错误可以通过优化光照贴图、系统内存、Swarm Agent设置等方法解决。但光照运算本身较占资源,要充分考虑场景规模和机器配置。

相关推荐
日月云棠3 小时前
UE5源码分析之Editor——Blutility模块全面分析
ue5
日月云棠4 小时前
UE5源码分析之Editor——BehaviorTreeEditor模块全面分析
ue5
远离UE41 天前
UE5 显存 虚拟内存 深入学习笔记
笔记·学习·ue5
日月云棠1 天前
UE5源码分析之Editor——AnimationSettings模块全面分析
ue5
远离UE42 天前
UE5 SF_VertexShader 如何使用
ue5
电子云与长程纠缠2 天前
UE5 Lyra PocketWorld进行3D内容UI预览 - 上
开发语言·学习·3d·ue5·游戏引擎
电子云与长程纠缠2 天前
UE5 Lyra PocketWorld进行3D内容UI预览 - 下
开发语言·学习·游戏·ui·ue5
远离UE43 天前
UE5 GPU内部异步
ue5
1204157137 肖哥3 天前
UE5 PCG PCGBlueprintElement简介
ue5
我救我自己3 天前
UE5分层渲染
ue5