IntelliJ Rider2020+Unity+EmmyLua调试的两种方式

2023-05-16

Rider2018.3.1版本中是可以直接附加Unity,很不错,就是调试有几率崩溃。一直想升级到最新版来解决调试不稳定的问题。但将Rider2018.3.1更新到Rider2020.2.1后,EmmyLua一直无法断点,各种闹心。经过各种百度、Google后找到了两种调试方法:

第一种:直接附加Unity

       这个是看到https://www.jianshu.com/p/8b87b3987182 中的介绍才知道的。各种感谢。

       Rider2019、Rider2020无法直接附加Unity调试的原因如下:

              EmmyLua把打断点的功能分离出来作为了一个独立插件,叫做EmmyLua-AttachDebugger。而之前的1.2.6版本则没有          分离出来这个功能,所以装了EmmyLua直接能打断点的。

1.  EmmyLua-AttachDebugger 下载地址:

       https://ci.appveyor.com/project/EmmyLua/emmylua-attachdebugger/build/artifacts

 2.下载后直接解压到插件目录即可:

        ...\JetBrains\JetBrains Rider 2020.2.1\plugins

 

第二种:EmmyDebugger(NEW),需要有Luasocket环境。

本人一周的测试,该种调试非常稳定,Unity没有崩溃问题。唯一不足:每次启动时都需要点击下面Debug按钮或者注释掉dbg.tcpConnect的三行代码。否则Unity被阻塞。

 

以下为详细配置方法,转自:https://www.jianshu.com/p/5a453a80b7e9

 

1.Rider 安装 EmmyLua 插件
2.添加调试器

选择Tcp(Debugger connect IDE),也就是IDE作为server,unity作为client,通过socket进行连接,这种好处就是可以在lua启动的入口处既可以进行调试,缺点是,必须先启动调试器,后启动unity。

3.复制调试信息到项目lua启动入口。(我是在lua入口处require了 一个emmylua 的调试脚本)


 


-- 此处是插件自己的emmy_core.dll的具体位置。如果是团队协作开发的话,建议把路径改为unity的相对目录。
package.cpath = package.cpath .. ';C:/Users/您的用户名/.Rider2019.2/config/plugins/intellij-emmylua/classes/debugger/emmy/windows/x64/?.dll'
local dbg = require('emmy_core') -- 加载动态链接库
dbg.tcpConnect('localhost', 9966)

4.如果使用了xlua的自定义加载(customloader)功能,需要在 customloader的地方对于加载emmy_core的地方跳过,不然emmy_core 会加载失败。

 

调试

1.启动调试器

 

 

2. 启动unity后就可以愉快的调试了。

 

最后附上《EmmyLua Attach Debugger浅析》的链接,防止以后找不到。

https://zhuanlan.zhihu.com/p/64241347?from_voters_page=true

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

IntelliJ Rider2020+Unity+EmmyLua调试的两种方式 的相关文章

  • Unity—UGUI

    每日一句 读数 学习 去更远的地方 才能摆脱那些你不屑一顾的圈子 目录 InputFiled输入框 例 用户名和密码 Toggle组件 案例 冷却效果 InputFiled输入框 Text Component 输入文本组件 Text输入内容
  • halfShader 模型切割

    Shader Unlit halfShader Properties Diffuse Diffuse Color 1 1 1 1 MainTex Texture 2D white StartCutoff StartCutoff Range
  • UnityLuaMvvM Lua 带通知的Mode类

    实现数据更新UI自动刷新的核心代码 欢迎关注https gitee com xiongks UnityMVVM mode function modeType local obj obj modeType modeType obj filds
  • Unity3D之Rigidbody

    目录 常用的Rigidbody属性和方法 rigidbody AddForce rigidbody AddTorque rigidbody velocity rigidbody angularVelocity rigidbody Sleep
  • unity game界面按下play会不断闪烁,按下暂停键(pause)或者中止/下一步(step),game界面的画面会接连变化

    没找到答案 改了两个下午的程序 改完还是这样 后来发现是FixedUpdate Update与OnDrawGizmos的问题 OnDrawGizmos是每帧都会绘制 用FixedUpdate理所当然就那啥了 分析的时候 就突然想到是不是这俩
  • Unity 资源加载卸载过程

    什么时候才是UnusedAssets 看一个例子 Object obj Resources Load MyPrefab GameObject instance Instantiate obj as GameObject Destroy in
  • 【Unity&C#&随机数】随机数

    一个简单的随机数获得 0或1 使用了这样的代码 想要获得0或者1 if Input anyKeyDown float i 1 if i 1 i Random Range 0 Rang i i lt 0 5 0 1 Debug Log Cou
  • Unity 安卓打包

    Unity打包的方式有很多种 自动打包和手动打包 今天小弟就鼓捣鼓捣unity手动打包 如果想动态打包的话 可以去看其他大佬的帖帖哈 unity打包先配置环境 下载unity的时候可以顺道把unity的安卓包下载下来 如果忘了也没事 可以从
  • 1.17 从0开始学习Unity游戏开发--场景切换

    前面的所有文章我们都在一个固定的游戏场景内进行开发 在最开始介绍场景这个概念的时候就已经提及 这个场景可以是一张地图 或者是一个对战房间等等 所以显然这个场景可以有多个 并且可以从一个场景切换到另外一个场景 那么在Unity中如何进行场景切
  • Unity动画系统详解

    目录 动画编辑器 编辑器面板 动画复用 前言 人形重定向动画 Humanoid 通用动画 Generic 旧版本动画 Legacy 动画控制器 系统状态 切换条件 状态机脚本 IK动画 反向动力学 BlendTree 混合树 Animato
  • UnityVR--组件3--Line Renderer--线性渲染

    目录 线性渲染组件简介 绘制线条Line Renderer组件介绍 绘制拖尾Trail Renderer组件介绍 应用1 使用Line Renderer绘制线段 应用1实现 使用系统工具或自定义工具绘制线段 应用2 Trail Render
  • Unity与Android的Back键冲突解决

    Unity与Android的Back键冲突解决 上一篇的最后留下了两个问题 Unity视图下横屏闪退 Unity视图下Android无法响应back返回上一activity 对于第一个问题 应该是Unity横屏下视图的某些设置跟Androi
  • unity中创建询问弹出窗口

    在开发过程中进程会遇到需要弹出一个窗口询问用户是否进行的操作 今天就来制作一个这样弹出窗口 然后根据弹出窗口的选择内容不同进行不同的操作 本例中主要是为了删除一个数据 而在删除数据操作前需要得到用户的一个确认操作 这里面主要用到了Notif
  • 【IMGUI】 各种辅助类 EditorGUIUtility、EditorUtility、GUIUtility、GUILayoutUtility

    EditorGUIUtility class in Editor 继承自 GUIUtility EditorGUI 的各种辅助程序 EditorGUIUtility currentViewWidth 我尝试打印了下这个值和position
  • unity: C#的Action Event Delegate的异同

    目录 一 Action 二 Event 三 Action和Event区别 四 Delegate 总结 Action Event Delegate的异同 前言 Action Event和Delegate都是C 语言中的重要概念 分别用于管理函
  • unity 性能查看工具Profiler

    文章目录 前言 profiler工具介绍 菜单栏 帧视图 模块视图 模块详细信息 通过profiler分析优化游戏性能 最后 前言 每次进行游戏优化的时候都用这个工具查看内存泄漏啊 代码优化啊之类的东西 真的好用 但是之前也就是自己摸索一下
  • unity dots jobSystem 记录

    Looking for a way to get started writing safe multithreaded code Learn the principles behind our Job System and how it w
  • 【原神游戏开发日志1】缘起

    原神游戏开发日志1 缘起 版权声明 本文为 优梦创客 原创文章 您可以自由转载 但必须加入完整的版权声明 文章内容不得删减 修改 演绎 相关学习资源见文末 大家好 最近看到原神在TGA上频频获奖 作为一个14年经验的游戏开发行业的老兵 我就
  • 【Unity】运行时创建曲线(贝塞尔的运用)

    Unity 运行时创建线 贝塞尔的运用 1 实现的目标 在运行状态下创建一条可以使用贝塞尔方法实时编辑的网格曲线 2 原理介绍 2 1 曲线的创建 unity建立网格曲线可以参考 Unity程序化网格体 的实现方法 主要分为顶点 三角面 U
  • Unity中URP下的指数雾

    文章目录 前言 一 指数雾 雾效因子 1 FOG EXP 2 FOG EXP2 二 MixFog 1 ComputeFogIntensity 雾效强度计算 2 lerp fogColor fragColor fogIntensity 雾效颜

随机推荐

  • 找自动驾驶工作该学习哪些必要知识?(ChatGPT-回答版)

    Q xff1a 找自动驾驶工作该学习哪些必要知识 xff1f A xff1a 机器学习 监督学习 xff1a 包括分类 回归等 xff0c 学习如何使用监督学习算法对数据进行预测和分类 无监督学习 xff1a 包括聚类 降维等 xff0c
  • 51单片机定时器初值计算

    菜鸟关于51类单片机的定时器初值计算问题的计算 首先先来介绍单片机的几个周期 xff1a 1 时钟周期 xff0c 也称为振荡周期 xff1a 定义为时钟脉冲的倒数 xff0c 在单片机中也就等于晶振的倒数 51单片机中把一个时钟周期定义为
  • 了解“回收站”

    一 不管是Windows还是Linux桌面 xff0c 删除文件操作都是相同的 1 删除操作 xff0c 可以选中文件 xff0c 按键盘上的 delete 键删除 xff0c 可以是鼠标右键 xff0c 然后在快捷菜单中单击 删除 按钮删
  • 信创环境下三个开源数据库:SQLite、MariaDB(MySQL)和postgreSQL(瀚高数据库免费版)基本操作

    在信创环境下 xff0c 常用的免费数据库主要是 xff1a SQLite MariaDB xff08 MySQL xff09 和postgreSQL xff08 瀚高数据库免费版 xff09 xff0c 可以在一些产品中内嵌使用 SQLi
  • 内网自建yum源和apt源(含各信创系统)

    现在Linux下面软件基本是通过yum apt等从软件仓库在线安装 xff0c 大的Linux发行版都有自己的软件仓库 如CentOS RedHat使用yum方式仓库 xff0c ubuntu使用apt方式仓库 很多政企单位内部网络是和互联
  • 国产信创Linux桌面系统比较:软件包格式及软件管理、桌面环境及桌面应用

    信创产业中 xff0c 操作系统开始整合 xff0c 基本上集中在银河麒麟V10和UOS2 xff0c 很多朋友问到各种国产信创Linux系统的区别和比较 因此结合前期写的几篇文章 xff0c 对这个问题再进行了整理 以龙芯CPU为例 xf
  • Date类型转换为字符串类型

    Date date 61 new Date SimpleDateFormat fmt 61 new SimpleDateFormat 34 yyyy MM dd HH mm ss 34 String dateStr 61 fmt forma
  • 《机关单位办公自动化应用指南 (基于国产信息技术应用创新终端)》与银河麒麟V10

    机关单位办公自动化应用指南 基于国产信息技术应用创新终端 一书适合各国产Linux桌面系统 xff0c 但是举例说明基本是基于中标麒麟V7 银河麒麟V10和中标麒麟V7都采用MATE桌面 xff0c 对于普通用户桌面操作而言差别不大 xff
  • NFS故障:Stale NFS file handle的解决一例

    故障描述 xff1a 一台备份一体机设备作为NFS服务端 xff0c export了目录 infokit exportnfs xff0c 从其他设备上挂载这个NFS 目录 xff0c 在NFS服务端和客户端及其上showmount e 都一
  • CentOS7部署nextcloud最新版本

    Nextcloud 是一个免费专业的私有云存储网盘 开源 项目 xff0c Nextcloud开发人员来自owncloud Nextcloud 跨平台支持 Windows Mac Android iOS Linux 等平台 xff0c 提供
  • SQL表间操作

    MySQL表间操作 近期需要对数据进行整理 xff0c 涉及多个安全产品的数据库 xff0c 基本都是MySQL的 xff0c 经常需要进行表的合并 整理操作 MySQL常见的求交集 并集和差集 1 select a b from tabl
  • ipref网络性能评估工具

    ipref网络性能评估工具 基本介绍 网络的主要性能参数包括带宽 xff0c 时延 xff0c 抖动和丢包率 xff0c 用一个名词就是QOS xff08 服务质量 xff09 Iperf xff08 可测丢包率 xff09 可以用来测量网
  • 抓取特定DNS查询包:tcpdump vs wireshark

    近期 xff0c 在办公网络中出现网络不稳定问题 xff0c 经过分析发现是网内大量的终端安装的安全软件 xff0c 每秒钟都定期进行地址探测 xff0c 其中需要探测taobao com之类的域名地址 xff0c 造成大量的DNS查询 x
  • ceph——数据修复/均衡速度测试

    以副本环境的数据均衡为例 xff0c 以下需要注意 xff1a 1 写入数据时 xff0c 用脚本监控写入数据量 xff08 ceph df xff09 到达预定值 xff0c 开始 停止cosbench cosbench支持命令行 进入c
  • iOS 卡顿、掉帧原因+优化

    卡顿 掉帧原因 VSync垂直信号 xff0c 一般说页面流畅是60fps xff0c 也就是每一秒钟会有60帧画面更新 xff0c 相当于16 7ms就要产生一帧画面 xff0c 那么在这16 7ms之内需要由CPU和GPU共同协同完成产
  • archlinux 安装virtualbox

    一 安装前准备 首先安装 linux headers sudo pacman S linux headers 其次确认linux内核的版本 uname r 如果和header的版本不一致 xff0c 需要更新内核 否则的话会在安装virtu
  • debian 切换默认桌面命令

    update alternatives config x session manager 选择gnome session
  • 解决windows系统80端口被占用问题_

    测试这个命令会把打印机共享等依赖http服务的程序停止 xff0c 导致共享无法使用 xff0c 所以还得寻找别的办法 xff0c 后来终于搜索到一条命令 netsh http show servicestate 1 这条命令可以查看到底是
  • Linux项目自动化构建工具---make/Makefile

    make Makefile 1 背景1 1 如何编写Makefile1 1 1 依赖关系1 1 2 依赖方法1 1 3 项目清理 2 Linux第一个小程序 进度条2 1 回车和换行概念2 2 行缓冲区概念2 3 完整的进度条代码和解析 1
  • IntelliJ Rider2020+Unity+EmmyLua调试的两种方式

    Rider2018 3 1版本中是可以直接附加Unity xff0c 很不错 xff0c 就是调试有几率崩溃 一直想升级到最新版来解决调试不稳定的问题 但将Rider2018 3 1更新到Rider2020 2 1后 xff0c EmmyL