使用VsCode调试UE5的PuerTs1、下载测试的Demo项目配置PuerTs的步骤这里不赘述 。
2、准备工作2.1 打开项目正常来说,直接打开项目可以看到如下画面

文章插图
如果直接点击运行,可以发现下方的 Output Log 窗口已经开始 Print 了很多案例 。是因为该项目默认执行的是QuickStart.ts 。
2.2 打开TsGameInstance.cpp

文章插图
3、添加VsCode断点3.1 在VsCode找到QuickStart.ts,随便断一个点(这里我们以 L17 为例)

文章插图
4、 修改虚拟机端口 (8889)(如果不知虚拟机的用途,可以查看ZombieYang大佬的推文)回到TsGameInstance.cpp中将 注释的代码 取消注释

文章插图
图片过长,目前代码如下:
void UTsGameInstance::OnStart(){//GameScript = MakeShared<puerts::FJsEnv>();GameScript = MakeShared<puerts::FJsEnv>(std::make_unique<puerts::DefaultJSModuleLoader>(TEXT("JavaScript")), std::make_shared<puerts::FDefaultLogger>(), 8889);GameScript->WaitDebugger();TArray<TPair<FString, UObject*>> Arguments;Arguments.Add(TPair<FString, UObject*>(TEXT("GameInstance"), this));GameScript->Start("QuickStart", Arguments);}
注意看修改后的代码 。我这里已经将端口更改为 " 8889 "同时打开了WaitDebugger(),目的是Client等待V8的虚拟机(Client和V8虚拟机的关系同样可以查看ZombieYang大佬的推文)5、添加VsCode配置5.1 打开VsCode的Debug配置

文章插图
5.2 选择 Node.js : Attach

文章插图
5.3 更改端口为 (8889)

文章插图
6、开始Debug6.1 启动VsCode待命①首先选择5.2添加的Debug配置

文章插图
②点击左侧绿色 三角形

文章插图
可以看到如下示意框

文章插图
6.2 启动2.1的项目不出意外已经成功被中断 。
7、 尽情Debug~

文章插图
【使用VsCode调试UE5的PuerTs】参考:
[UE] 1.64.2的VSCode无法断点调试TS
Puerts Inspector指南(一)在UE4和Unity里调试Javascript
推荐阅读
- 手把手教你使用LabVIEW实现Mask R-CNN图像实例分割
- 使用 StringUtils.split 的坑
- 聊一聊对一个 C# 商业程序的反反调试
- 书名号使用方法 书名号用法
- Java Timer使用介绍
- lol手游戏命师的大招怎么使用(lol手游技能释放技巧)
- SpringBoot 常用注解的原理和使用
- 眼霜的正确使用顺序,眼霜的正确使用方法
- 漫步者funbuds怎么配对_漫步者funbuds使用说明
- 四 【单片机入门】应用层软件开发的单片机学习之路-----ESP32开发板PWM控制电机以及中断的使用