Unity3D设置使用VS2012做脚本编辑,但每次还是启动Monodevelop怎么办。
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Unity3D设置使用VS2012做脚本编辑,但每次还是启动Monodevelop怎么办。相关的知识,希望对你有一定的参考价值。
我原来用Unity3D+vs2012,一直都好好的,但是前段时间机器重装,然后按照原来的方法关联vs2012就不行了,每次打开脚本还是用默认的monodeve,删掉monodeve以后就变成记事本了。设置cs文件用vs打开,可以启动vs但是里面没有工程,只有单个文件。
怎么解决?
不行,还是mono
追答有时候双击脚本文件的话它会先打开mono,再次双击脚本文件就会打开vs,打开脚本文件最好在inspector上方点击open按钮
追问没用,VS压根没有被关联
追答重装u3d试试看吧
参考技术B 下载补丁KB2781514,下载地址 http://www.microsoft.com/zh-cn/download/details.aspx?id=36020,安装并重启电脑即可 参考技术C我也遇到这个问题了……
后来把vs修复了一遍,修复之后启动一遍vs,然后用unity就可以连接啦!
修复差不多相当于重新安装了一遍……太费时间……
本回答被提问者采纳 参考技术D 哥们,问题解决了吗?我也遇到这个问题,求破Unity2.10 利用VS2015编辑Unity的C#脚本
分类:Unity、C#、VS2015
创建日期:2016-03-31
一、简介
用VS2015编辑C#脚本时,如果让其“显示所有文件”,就会看到VS2015解决方案资源管理器中项目的文件夹结构和Unity的Project下的文件夹结构完全相同:
这样一来,你就可以在VS2015中直接打开编辑不同的C# 脚本文件了,而且还可以直接创建新的C# 脚本,而不必在Unity和VS2015间来回切换。
1、与Unity的深度集成
如果你仍然不得不一直在Unity编辑器和VS2015之间来回切换,则VS2015 Tools for Unity 就不是一个提升效率的工具了。之所以借助VS2015 Tools for Unity,是因为可以轻松地在无需离开VS2015的情况下保持工作,这是它能提升开发效率的主要原因。
•VS2015中呈现的项目层次结构和在Unity编辑器中显示的层次结构相同。
•VS2015会自动将来自Unity控制台的输出显示在VS2015的错误窗口内的右侧。
•调试游戏时,无需切换回Unity,只需按F5。
无论是独立运行还是在Unity编辑器中运行,VS2015强大的调试器都会连接到你的Unity游戏以调试C#脚本和DLL。
• 断点,包括条件断点。
• 计算“监视”窗口中的复杂表达式。
• 检查和修改变量和参数的值。
• 深化到复杂的对象和数据结构。
你甚至可以当Unity游戏在网络上的另一台计算机上运行时对其进行调试。
2、MonoBehavior向导
在VS2015的.cs代码编辑器中,将光标放置在你可能要插入方法的位置,然后鼠标右击选择【Implement MonoBehaviors】:
此时就会出现下面的选项:
选择要重载的方法,单击【确定】按钮,它就会自动生成对应的代码。
当你需要重载不熟悉的方法时,MonoBehavior 向导尤其有用。
3、可直接编辑Shader
Unity的 ShaderLab语言的语法着色可帮助你在着色器中的错误变成bug之前发现它们。你只需在VS2015中打开并编辑ShaderLab文件。
4、Unity 错误列表
连接到 Unity 实例时,可以从 Visual Studio 内部的 Unity 控制台查看消息。 这包括 Unity 中的错误和警告。 消息将显示在 Visual Studio 的“错误列表”窗口中;Unity 中的错误消息将显示在“错误”选项卡上,警告消息将显示在“警告”选项卡,而其他消息(比如通过使用 Debug.Log Unity API 发送的消息)将显示在“消息”选项卡上。
为了查看消息,必须正确配置 Unity 项目以支持脚本调试并导入适用于你的 Visual Studio 版本的 Visual Studio Tools for Unity 包,并且 Visual Studio 必须连接到 Unity。
如果不想在 Visual Studio 的“错误列表”窗口中看到 Unity 中的错误、警告和消息,则可在“配置”菜单中禁用它们。
二、需要注意的问题
在Unity中使用C#编写脚本时需要注意以下规则:
1、变量的定义
在Unity中,C#脚本的变量不是用属性来声明,而是直接用public、protected、private来声明该变量可访问的范围,格式为:
访问修饰符 变量类型 变量名;
例如:
public int x = 3;
private string s="abc";
其中,声明为public的变量会自动显示在Unity编辑器的Inspector视图中,并可以在Inspector视图中直接编辑该变量的值。
此规定仅限添加到游戏对象的C# 脚本类,即从MonoBehauour类继承的子类中定义的变量,其他类没有此限制。
2、脚本类必须是MonoBehauour类的子类
凡是需要添加到游戏对象的C# 脚本类,都必须直接或间接地从MonoBehauour类继承。对于在Unity编辑器中新建的C# 脚本,Unity会自动帮助开发者完成继承的相关代码。
不需要添加到游戏对象的C#类没有此限制。
3、脚本子类不要使用构造函数
对于脚本子类(从MonoBehauour类继承的类),应该在Start()方法或者Awake()方法中处理初始化的工作,一定不要在MonoBehauour子类中用构造函数做初始化工作,这是因为Unity无法确定何时调用该子类的构造函数。
不是MonoBehauour的子类没有此限制。
4、脚本类名要和脚本文件名相同
对于从MonoBehauour类继承的类,类名一定要与脚本文件名相同,否则添加脚本到游戏对象时会提示错误。
不是MonoBehauour的子类没有此限制。
5、静态变量
建议不要在对象引用中使用静态变量,以确保未使用的对象能够从内存中删除。
以上是关于Unity3D设置使用VS2012做脚本编辑,但每次还是启动Monodevelop怎么办。的主要内容,如果未能解决你的问题,请参考以下文章
用VS2012做项目时,编辑了母版页,不调试开始执行浏览器却显示不出来,提示如下图,这是啥情况呢
Unity3D中脚本的执行顺序和编译顺序(vs工程引用关系)