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设置等方法解决。但光照运算本身较占资源,要充分考虑场景规模和机器配置。

相关推荐
四代水门12 天前
UE5实现客户端与服务器时间同步
ue5
智海深蓝13 天前
海上平行战场:态势模拟三维可视化平台
3d·ue5
_守一14 天前
UE5 ListView记录
ue5
成都渲染101云渲染666615 天前
CR15新功能介绍以及CR15云渲染流程
ue5·图形渲染·blender·maya·corona
一锅炖出任易仙16 天前
创梦汤锅学习日记day30
学习·ai·ue5·游戏引擎
OSwich16 天前
【UE5学习笔记】UMG中控件命名规范
笔记·学习·ue5
一锅炖出任易仙17 天前
创梦汤锅学习日记day29
学习·ai·ue5·游戏引擎
吴梓穆17 天前
UE5 C++ 注册 开始重叠和结束重叠事件
开发语言·c++·ue5
妙为17 天前
unreal engine5(UE5)中使用Rider
ue5·游戏引擎·虚幻·rider
Yuk丶19 天前
厌倦了假AI对话?本地 LLM 语音对话 + 口型同步系统 2.0(已开源!)
c++·人工智能·语言模型·开源·ue4·语音识别·游戏开发