默认情况下,对于unreal的工程里面的配置“DebugGame”会优化掉engine部分的代码,这就意味着除了custom的代码engine的代码是无法进去debug的。
为了debug engine的代码,有几种方法:
1. 关掉一些代码的优化:
#pragma optimize("", off) YOUR FUNCTION HERE #pragma optimize("", on)
2. 如果想要打开整个模块的优化,可以将OptimizeCode这个变量设置为CodeOptimization.Never:
比如:
public class Persona : ModuleRules { public Persona(TargetInfo Target) { OptimizeCode = CodeOptimization.Never;
3. 如果想要debug整个工程的engine代码,在VS里面设置工程数学为DebugGameEditor,重编,debug。
注意,如果利用launcher下载下来的unreal,是不可以改变engine的代码并且编译debug的,engine的代码只能作为引用查看,不改变引擎代码需要debug的话,利用launcher下载除了引擎外,还需要下载editor symbols for debugging的内容,是否已经下载可以按照下面方法查看:
如果想要改变engine代码并且debug查看,那么就必须从git上下载源代码进行自己进行编译editor。