文章目录
前言
unity调用cesium包的原理是调用包文件夹里面com.cesium.unity\Editor下的dll文件(就是源码编译那篇生成的dll),如果有改写源码的需求我们修改然后发布dll进行测试即可,但是出现问题的时候很麻烦——通常使用返回值或者弹窗来提示错误信息,如果有进一步需求重新发布dll测试。
既然我们拥有了源码,那么就不用受这气了,进行c++源码调试。本人使用vs2022作为unity编辑器,所以使用vscode作为调试c++的工具,当然也可以反过来。
一、配置vscode
1、打开vscode安装C/C++相关的几个插件
2、用vscode打开文件夹com.cesium.unity/native~文件夹,改动launch.json文件,添加以下配置:
{
"configurations": [
{
"name": "(Windows) Attach",
"type": "cppvsdbg",
"request": "attach",
"program": "${workspaceFolder}/native~/*",
"processId": "${command:pickProcess}",
"MIMode": "gdb"
}
]
}
配置原理自行搜索launch.json,发现可以配置附加程序的端口方便调试,但是unity打开工程的时候动态分配端口所以重新打开unity后需要更改,并且我加上后测试发现没啥用还得自己选附加程序。。。
不过影响不大,知道的可以说下。
request:调试的模式;
launch:启动程序并调试;
attach:将程序附加到一个正在运行的进程中进行调试;
“program”:指定要进行调试的可执行文件的路径;
“type”:指定调试器的类型
“MIMode”:指定调试器的模式
port:要附加到的进程的端口
二、测试
进入Runmtime/src目录下随便找一个cpp文件打断点,然后启动unity、再启动vscode调试。
调试的时候需要附加进程,搜索unity的工程名称可以快速找到。
总结
简单介绍了如何使用vscode对C++代码进行调试,实例为cesium native的源码。在修改和扩展cesium的过程中能够直观的进行测试、联调。