脚本宝典收集整理的这篇文章主要介绍了UE4 enable logs in Shipping builds,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
默认情况下,使用 Shipping 配置的打包游戏根本不会记录任何内容。这对安全性非常有用。但是,当您的游戏测试人员和现场玩家遇到问题时,如果没有日志,就很难进行故障排除。
UE4/UE5 在Shipping 版本中默认是不会有日志的(USE_LOGGING_IN_SHIPPING = 0),要在 Shipping build 中启用日志。
虽然交付构建的默认设置不会打印任何平台的日志,但可以定义 USE_LOGGING_IN_SHIPPING (Source/Runtime/Core/Public/Misc/Build.h)在 UBT 中启用 bUseLoggingInShipping 来启用它来这样做。
执行以下过程:
1、必须首先下载引擎源代码,并使用源码构建引擎开发项目。没有它,它根本无法工作。这些设置会改变构建游戏和引擎二进制文件的方式。
2、您需要在游戏模块的 Target.cs 文件中添加一些额外的设置。
在 {projectname}.Target.cs 文件的 contrsuctor 中,添加以下行: bUseLoggingInShipping = true,USE_LOGGING_IN_SHIPPING = 1 完全定义了日志记录代码。 仅仅设置该项会导致构建失败。
还需要设置其他两个标志之一,具体取决于您是使用 UE4 的源构建还是从 Epic Games Launcher 安装。
如果使用源构建,添加:BuildEnvironment = TargetBuildEnvironment.Unique
如果使用已安装的版本,添加:bOverrideBuildEnvironment = true;
public class GameTarget : TargetRules { public GameTarget(TargetInfo Target) : base(Target) { Type = TargetType.Game; // enable logs and debugging for Shipping builds if (Configuration == UnrealTargetConfiguration.Shipping) { BuildEnvironment = TargetBuildEnvironment.Unique; bUseChecksInShipping = true; bUseLoggingInShipping = true; } ExtraModuleNames.AddRange( new string[] { "Game" } ); } }
然后,下次在 Shipping 模式下打包时,不仅可以获得日志,而且还可以将 Visual Studio 调试器附加到 Shipping 二进制文件。
3、运行带有 “-log” 标志的 exe,日志会出现在命令行窗口中。
UE4 会在 “WindowsNoEditorExample_426SavedLogs” 中保存运行的日志。
UE5 会在 “C:UsersxxxAppDataLocalExample_500” 中保存运行的日志。
以上是脚本宝典为你收集整理的UE4 enable logs in Shipping builds全部内容,希望文章能够帮你解决UE4 enable logs in Shipping builds所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。