【Unity】与VS联合开发过程中细节问题及解决:很小又很难找到的(遇到就会更新)

(一) 找不到对象:Object reference not set to an instance of an object

直译出来是:对象引用未设置为对象的实例

在使用

transform.Find("对象所在路径").gameObject;

GameObject.Find("对象所在路径");

在代码中找想操作的对象(组件)时,容易遇到找不到的问题,特别是刚接触Unity的时候

解决方法:

①检查命名

 打错对象名称肯定是找不到相应对象的。

在代码中写的各类名称(大多数为“”中的代码),特别是需要获取的,建议直接去Unity中复制粘贴,不要太过于相信自己,尤其是在Unity中新建对象时名称不小心带的空格!!!

很难找到问题所在,一直报错(来自找了一整天的亲身经历……)

②把脚本移除,重新挂回物体(重建脚本)

脚本检查了没有任何问题,只能尝试重来。

之前卡过的一个Bug:每次打开项目,把脚本从物体上移除再重新挂上去,object就能找到了,如果是这种情况,建议直接新建一个脚本,把内容复制进去,再挂到物体上即可

(二)Unity与VS的联合调试无法正常进行

需要使用Unity与VS进行游戏开发,想要更快解决编程时的问题,那就离不开调试

1.安装调试插件:

链接:https://pan.quark.cn/s/3973d68e6e2c
提取码:jGBb

这里工具对应是VS2013和Unity2017.4.40版本的,最好查看对应版本,

新版的unity可以和VS内置了调试功能,不需要另外下载插件

安装插件时双击进行安装或卸载就好,可选项不多,没什么太大问题

安装好之后,从Unity点击脚本进入VS,可以看到工具栏出现:

 也可以点击工具栏的“调试”选择"Attach Unity Debugger"进行调试:

2.遇到问题:调试时弹出选择实例窗口,却没有可选的实例:

 这时建议从以下几种方法做尝试:

①检查Unity是否正常打开

若在进入VS后,将Unity关闭,VS是找不到所连接的Unity的,无法进行联合调试

②向Unity中引入VS:

Assets -> Import Package -> Visual Sutio 2013 Tools,再选择右下角的导入(import)

对我来说无法解决问题,但是查资料遇到很多帖子都说要设置,就一起归纳了)

 ③检查默认Unity的exe是否被改动

默认应为Unity.exe,一般不会改变,但是若改名或加了不需要的后缀,可能会造成找不到的问题。

④修改打开脚本的默认方式!

在Unity中:Edit -> Preferences,在左边选中External Tools ,选择VS对应版本为默认打开方式

 设置后要重启VS和Unity(VS从Unity的脚本打开)

在代码中打断点,点击调试进行测试:记得开启调试后在Unity中点击运行,VS下方会变红,调试的代码也相应高亮显示

基本检查后可以解决问题,如果不行欢迎交流~

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值