当前位置: 首页 > 工具软件 > engine > 使用案例 >

Unreal Engine打包项目

太叔富
2023-12-01

1. 官网指导:

https://docs.unrealengine.com/zh-CN/Engine/Basics/Projects/Packaging/index.html

在Unreal Editor界面中操作进行打包时,在linux机上遇到了问题,首先是Error:

Error: declaration shadows a variable in namespace 'Chaos' 

用了以下链接中的方法解决后:

https://github.com/microsoft/AirSim/issues/2617

仍然存在error:

LogOutputDevice: Error: === Handled ensure: ===

LogOutputDevice: Error: Ensure condition failed: IsLocked() [File:/data/UnrealEngine/Engine/Source/Developer/EditorAnalyticsSession/Private/EditorAnalyticsSession.cpp] [Line: 279]

LogOutputDevice: Error: Stack: 

LogOutputDevice: Error: [Callstack] 0x00007fe8d19949d8 libUE4Editor-EditorAnalyticsSession.so!FEditorAnalyticsSession::Unlock() [/data/UnrealEngine/Engine/Source/Developer/EditorAnalyticsSession/Private/EditorAnalyticsSession.cpp:279]

LogOutputDevice: Error: [Callstack] 0x00007fe8d7a74a54 libUE4Editor-Engine.so!FEngineAnalytics::Initialize() [/data/UnrealEngine/Engine/Source/Runtime/Engine/Private/EngineAnalytics.cpp:196]

LogOutputDevice: Error: [Callstack] 0x00007fe8d86caf9d libUE4Editor-Engine.so!UEngine::Init(IEngineLoop*) [/data/UnrealEngine/Engine/Source/Runtime/Engine/Private/UnrealEngine.cpp:1627]

LogOutputDevice: Error: [Callstack] 0x00007fe8d33e4bd9 libUE4Editor-UnrealEd.so!UEditorEngine::InitEditor(IEngineLoop*) [/data/UnrealEngine/Engine/Source/Editor/UnrealEd/Private/EditorEngine.cpp:605]

LogOutputDevice: Error: [Callstack] 0x00007fe8d33e9e16 libUE4Editor-UnrealEd.so!UEditorEngine::Init(IEngineLoop*) [/data/UnrealEngine/Engine/Source/Editor/UnrealEd/Private/EditorEngine.cpp:954]

LogOutputDevice: Error: [Callstack] 0x00007fe8d3e31bf9 libUE4Editor-UnrealEd.so!UUnrealEdEngine::Init(IEngineLoop*) [/data/UnrealEngine/Engine/Source/Editor/UnrealEd/Private/UnrealEdEngine.cpp:74]

LogOutputDevice: Error: [Callstack] 0x000000000022ba44 UE4Editor!FEngineLoop::Init() [/data/UnrealEngine/Engine/Source/Runtime/Launch/Private/LaunchEngineLoop.cpp:3654]

LogOutputDevice: Error: [Callstack] 0x00007fe8d3e3beb2 libUE4Editor-UnrealEd.so!EditorInit(IEngineLoop&) [/data/UnrealEngine/Engine/Source/Editor/UnrealEd/Private/UnrealEdGlobals.cpp:92]

LogOutputDevice: Error: [Callstack] 0x000000000023e445 UE4Editor!GuardedMain(char16_t const*) [/data/UnrealEngine/Engine/Source/Runtime/Launch/Private/Launch.cpp:152]

LogOutputDevice: Error: [Callstack] 0x00007fe8db90a191 libUE4Editor-UnixCommonStartup.so!CommonUnixMain(int, char**, int (*)(char16_t const*), void (*)()) [/data/UnrealEngine/Engine/Source/Runtime/Unix/UnixCommonStartup/Private/UnixCommonStartup.cpp:264]

LogOutputDevice: Error: [Callstack] 0x00007fe8d2155840 libc.so.6!__libc_start_main(+0xef)

LogOutputDevice: Error: [Callstack] 0x000000000022b029 UE4Editor!_start()

未能解决,总是打包失败。

2. 按照AirSim仓库的issue中的线索:

Error packaging Blocks project on linux · Issue #1034 · microsoft/AirSim · GitHub

在电脑的/data/AirSim/目录下输入:

$UE4_ROOT/Engine/Build/BatchFiles/RunUAT.sh BuildCookRun                 -project="$(pwd)/Unreal/Environments/Blocks/Blocks.uproject"                 -nop4 -nocompile -build -cook -compressed -pak -allmaps -stage                 -archive -archivedirectory="$(pwd)/Unreal/Environments/Blocks/Packaged/Development"                 -clientconfig=Development -clean -utf8output

经过一定时间的等待,成功在Unreal/Environments/Blocks/Packaged/Development文件夹下生成了ubuntu下可用的Unreal程序包。在生成程序包的电脑下可用。

3. 在另一计算机中按照2中的命令首先对ABlock进行打包,得到了error:

Cannot open assembly 'AutomationTool.exe': No such file or directory.RunUAT ERROR: AutomationTool was unable to run successfully.

再使用同样的命令对自带Blocks进行同样的操作,也出现error。

4. 在3中的计算机中后续进行过的操作有:

a. 在unreal editor界面中对ABlock进行打包(失败)

b. 对hp机中linux下的unreal进行如步骤1中的修改;在unreal下重新make;

c. 使用2中的命令对Blocks进行打包,成功,可以独立运行packaged环境;

d. 使用2中的命令对ABlock进行打包,失败;

    且:不使用#2877的修改,则在命令行打包时返回一个与weather option有关的错误;使用#2877的修改,则在打包时就会返回和issue#2957相似的Name 'Dev-Core' PackageVersion 4  MaxExpected 3错误。

结论:暂时放弃打包,发布可编辑版本ABlock环境。

 类似资料: