当前位置: 首页 > news >正文

虚幻5的C++调试踩坑

本地调试VS附加调试

踩坑1 预编译版本的UE5没有符号文件,无法调试源码

官方代码调试所需要的符号文件bdp需要下载导入。我安装的5.5.4是预编译版本,并非ue5源码。所以不含bdp文件。需要调试官方代码则需要通过EPIC中下载安装。右键UE版本,打开 选项。
在这里插入图片描述
到此,若你调试,可以看到官方代码能够调试成功,但是自己的代码附加调试还是无法命中断点。

纯蓝图转C++项目

在虚幻5中,首先创建项目有两种:纯蓝图 以及 C++项目。
通过工具新建c++类。可以先建个空白的。然后退出UE5,打开项目根目录,删除Binaries文件夹、Intermediate文件夹。右键Draft.uproject选择生成项目文件,接着打开Draft.sln解决方案。
在这里插入图片描述
打开项目后,解决方案里面有多个项目,只需要设置自己项目名称为启动项目,然后重新生成。
到此。蓝图项目变为了C++项目。编译成功后,通过EPIC可以打开。打开后UE界面右下角出现编译图标。
关闭实时编译防止报错。

本地调试(新创建一个UE界面)

此时,选择Development Editor 配置调试项目Draft,使用绿色本地调试按钮,则会重新创建一个UE5窗口,能够进入并命中断点。这种方式调试成功,但是每次需要重新打开UE编辑器,时间慢、卡顿。
因此需要使用附加程序调试。

踩坑2 附加程序调试

选择附加程序到Unreal engine.exe上调试。发现显示断点无法命中,不生效,打开UE5编辑器测试。确实如此。
检查自己的代码执行,确实输出了日志,表示执行了,但是没命中断点。

打开 调试-窗口-模块。发现只有名称Unreal Editor.exe模块。自己的项目名称为Draft没有加载进来。

查资料得知:

检查编译的配置,这里有四种模式,Debug Game、Debug GameEditor、Development、Development Editor。每种功能不一样。
在这里插入图片描述
测试检查发现,无论哪一种他们有一些能够在项目文件夹Draft\Binaries\Win64\中生成相关的pdb符号文件。但是这些dll或者exe都没有在附加程序调试的时候被加载到模块中。

到此,附加程序调试时候,编译没问题、程序执行有输出(只是不命中断点)、pdb符号文件生成成功的、死活就是加载不进去!!!!
直接本地调试一下就命中了,气人😡

断点失效原因:最后发现附加程序调试的时候,会加载整个UE编辑器的代码模块,因此数量庞大,而Visual Studio默认的调试模块最多500个,导致我自己写的代码生成的pdb文件没有加载进去。
解决办法:通过添加以下注册表项并重新启动 PC 来增加限制
打开注册表,HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager
新建项:类型DWORD,10进制,名称DebuggerMaxModuleMsgs ,值 2048。重启电脑。

选择最长用的Development Editor,x64,Draft。启动EPIC的UE5项目,重新附加到Unreal Editor。
打开调试-窗口-模块。加载的模块大于500了,直接搜索Draft,发现有了。测试是否能调试:按照预期命中断点。并且不会再新打开UE5编辑器了。在这里插入图片描述

相关文章:

  • 危险化学品标志速查手册(27个完整版)
  • 文件备份程序中的线程池管理:为何限制子线程数量?
  • Linux Makefile-概述、语句格式、编写规则、多文件编程、Makefile变量分类:自定义变量、预定义变量
  • feign 调用返回值为void接口,抛出了异常也不报错问题处理
  • 【C++】模板进阶
  • 编程中,!! 双感叹号的理解
  • 华为数字芯片机考2025合集1已校正
  • ECMAScript 6 新特性(一)
  • 解锁基因密码之重测序(从测序到分析)
  • 快速幂fast_pow
  • [Redis]redis-windows下载安装与使用
  • AI模型多阶段调用进度追踪系统设计文档
  • spark运行架构
  • 神舟平板电脑怎么样?平板电脑能当电脑用吗?
  • DB2数据库专用python库--ibm_db
  • 计算机控制系统:HX1838红外遥控器解码
  • # 深度学习中的优化算法详解
  • 利用高阶函数实现AOP
  • 蓝桥杯第十五届C++B组省赛真题解析
  • Appium工作原理及环境的搭建(1)
  • 网站开发哪个工具好/人工智能教育培训机构排名
  • 找人做网站需要什么/企业查询系统
  • 网站建设net接口/线上电商怎么做
  • 优享微信网站建设/蚂蚁bt
  • 一般电商都是在哪些网站上做/网站关键词优化推广哪家好
  • 传智播客网站开发全套视频教程/最近的电脑培训班在哪里