【unity小技巧】分享vscode如何进行unity开发,且如何开启unity断点调试模式,并进行unity断点调试(2025年最新的方法,实测有效)

news/2025/2/8 14:03:41 标签: unity, vscode, 游戏引擎, 开发语言, c#, 编辑器

文章目录

  • 前言
  • 一、前置条件
    • 1、已安装Visual Studio Code,并且unity首选项>外部工具>外部脚本编辑器选择为Visual Studio Code [版本号],
    • 2、在Visual Studio Code扩展中搜索Unity,并安装
    • 3、同时注意这个插件下面的描述,需要根据自己的unity版本将unity包管理器中的Visual Studio Editor更新至指定版本,基本都是2.0.20以上
    • 4、重启
  • 二、附加unity调试模式
    • 1、确保【.vscode】目录下没有launch.json文件,有的话可以直接删掉,防止影响(不想删其实也可以)
    • 2、附加了Attach to Unity调试配置
    • 3、开启Attach to Unity调试模式
    • 4、关联unity调试模式
    • 5、主动切换untiy调试模式
  • 三、断点调试
    • 1、打断点
    • 2、开启调试模式
    • 3、运行unity程序
    • 4、调试查看变量信息
    • 回到vscode ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/5b53890f95734bb9b29c436b41917211.png) 也可以鼠标悬停在变量位置,查看变量信息 ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/67996d64c72c4e368021813aa558050a.png)
  • 专栏推荐
  • 完结

前言

首先恭喜你,你找到了这篇文章。因为这篇文章我是经过自己实操,跟着我的步骤操作,保证每个人都能使用vscode进行unity断点调试,能解决你的全部问题。

找到这篇文章之前,你可能已经在网上找到了很多五花八门的办法,基本都是误人子弟,解决不了实际问题。这也是我写这篇文章的初衷。

很多办法会告诉你安装什么Debugger for Unity或者VSCode Unity Debugger插件等等,我现在告诉你这些统统都不需要,如果你已经安装了,我推荐你直接卸载了,因为根本没用。

这里我用的是unity2022版本进行测试,其他版本应该也大同小异。

一、前置条件

其实就是让你的unityvscode做关联,如果你已经关联了,直接跳过前置条件这一步骤即可

unityVisual_Studio_Code__12">1、已安装Visual Studio Code,并且unity首选项>外部工具>外部脚本编辑器选择为Visual Studio Code [版本号],

在这里插入图片描述

2、在Visual Studio Code扩展中搜索Unity,并安装

在这里插入图片描述

unityunityVisual_Studio_Editor2020_16">3、同时注意这个插件下面的描述,需要根据自己的unity版本将unity包管理器中的Visual Studio Editor更新至指定版本,基本都是2.0.20以上

在这里插入图片描述

4、重启

此时所有配置已完成,重启Unity项目,然后双击项目中任意脚本打开可自动跳转到Visual Studio Code,并且可以看到资源管理器中的项目目录


unity_22">二、附加unity调试模式

vscodelaunchjson_23">1、确保【.vscode】目录下没有launch.json文件,有的话可以直接删掉,防止影响(不想删其实也可以)

在这里插入图片描述

2、附加了Attach to Unity调试配置

如果前面你删除了launch.json文件,打开调试模式大概率是显示这样
在这里插入图片描述
关闭vscode,重新从unity双击打开代码,你会发现调试模式就变成了这样,自动附加了Attach to Unity配置
在这里插入图片描述
launch.json文件内容如下
在这里插入图片描述

3、开启Attach to Unity调试模式

如果你点击启动调试模式出现下面的错误,大概率就是你没有执行我上面说的一步——关闭vscode,重新从unity双击打开代码
在这里插入图片描述
如果启动成功,显示如下
在这里插入图片描述

unity_38">4、关联unity调试模式

此时,返回到 Unity 中会有 Debugger Attached 绑定的提示
在这里插入图片描述
翻译一下
在这里插入图片描述
选择本次会话绑定(Enable debugging for this session) 或所有项目绑定(Enable debugging for all projects)即可

等待 Unity 编译后,可以看unity下面显示蓝色图标已连接调试模式
在这里插入图片描述

回到 VSCode 会看到调用栈堆真正运行,说明 Debugger 已经关联成功。
在这里插入图片描述

5、主动切换untiy调试模式

如果你没有这样的弹窗或者不小心叉掉了,你可以点击unity下面图标主动切换为调试模式
在这里插入图片描述


三、断点调试

1、打断点

在代码片段中增加任意断点
在这里插入图片描述

2、开启调试模式

在这里插入图片描述

unity_62">3、运行unity程序

回到 Unity 运行程序,会发现程序一直在加载,不用担心,因为前面我们加了断点,程序停在了我们打断点的位置,没有继续执行导致的
在这里插入图片描述

4、调试查看变量信息

vscode%0Ahttpsiblogcsdnimgcndirect5b53890f95734bb9b29c436b41917211png%0A%0Ahttpsiblogcsdnimgcndirect67996d64c72c4e368021813aa558050apng_66">回到vscode
在这里插入图片描述
也可以鼠标悬停在变量位置,查看变量信息
在这里插入图片描述

专栏推荐

地址
【从零开始入门unity游戏开发之——C#篇】
【从零开始入门unity游戏开发之——unity篇】
【制作100个Unity游戏】
【推荐100个unity插件】
【实现100个unity特效】
unity框架开发】

完结

赠人玫瑰,手有余香!如果文章内容对你有所帮助,请不要吝啬你的点赞评论和关注,你的每一次支持都是我不断创作的最大动力。当然如果你发现了文章中存在错误或者有更好的解决方法,也欢迎评论私信告诉我哦!

好了,我是向宇,https://xiangyu.blog.csdn.net

一位在小公司默默奋斗的开发者,闲暇之余,边学习边记录分享,站在巨人的肩膀上,通过学习前辈们的经验总是会给我很多帮助和启发!如果你遇到任何问题,也欢迎你评论私信或者加群找我, 虽然有些问题我也不一定会,但是我会查阅各方资料,争取给出最好的建议,希望可以帮助更多想学编程的人,共勉~
在这里插入图片描述


http://www.niftyadmin.cn/n/5844931.html

相关文章

Rust语言进阶之标准输出:stdout用法实例(一百零六)

简介: CSDN博客专家、《Android系统多媒体进阶实战》一书作者 新书发布:《Android系统多媒体进阶实战》🚀 优质专栏: Audio工程师进阶系列【原创干货持续更新中……】🚀 优质专栏: 多媒体系统工程师系列【…

5.2Internet及其作用

5.2.1Internet概述 Internet称为互联网,又称英特网,始于1969年的美国ARPANET(阿帕网),是全球性的网络。 互连网指的是两个或多个不同类型的网络通过路由器等网络设备连接起来,形成一个更大的网络结构。互连…

备战蓝桥杯:二维前缀和之激光炸弹

由于xi yi在0到5000之间,我们之前学的前缀和模板都是从下标1开始,我们就把x和y各自加1就好了,也就是在1到5001之间了,题目又说了,同一位置可能有多个目标,所以我们在一个位置求价值的时候应该用加等来求和 …

makefile 的strip,filter,ifeq,ifneq基础使用

目录 一、strip1.1 语法1.2 示例1.3 使用场景 二、filter2.1 语法2.2 示例2.3 使用 * 和 ? 通配符2.4 结合使用2.5 使用场景 三、ifeq 和 ifneq3.1 ifeq3.1.1 语法3.1.2 示例 3.2 ifneq3.2.1 语法3.2.2 示例 3.3 典型使用场景3.3.1 根据版本控制编译选项:3.3.2 选择不同的源文…

关于 SQL 内连接、外连接(左连接、右连接)的面试题

一、概念理解类 1. 请详细解释内连接(INNER JOIN)、左连接(LEFT JOIN)、右连接(RIGHT JOIN)在 SQL 中的概念和区别,并分别举例说明它们在实际查询场景中的应用。 在SQL中,内连接&a…

Vue:Table合并行于列

<template><div><el-table:data"tableData":span-method"mergeCells"style"width: 100%"><el-table-columnprop"date"label"日期"width"180"></el-table-column><el-table-colu…

Flutter List 的 every 如果回调函数抛出异常 应该如何处理

在使用 List 的 every 方法时&#xff0c;如果回调函数抛出异常&#xff0c;可以通过以下几种方式进行处理&#xff1a; 1. 在回调函数内部捕获异常 在回调函数内部使用 try-catch 语句捕获可能抛出的异常&#xff0c;并根据具体情况进行处理。这样可以避免异常直接导致 ever…

DeepSeek和ChatGPT的优劣或者区别(答案来DeepSeek和ChatGPT)

DeepSeek的答案 DeepSeek与ChatGPT作为当前两大主流AI模型&#xff0c;在架构设计、性能表现、应用场景等方面存在显著差异&#xff0c;以下从多个维度进行对比分析&#xff1a; 一、架构与训练效率 架构设计 DeepSeek&#xff1a;采用混合专家&#xff08;MoE&#xff09;框架…