Unity3D 3.5 之windows平台coding及debug环境小结

使用Unity3D3.5也有一段时间了,对于编码和调试的集成环境小结如下:


(1) 编辑代码使用Visual Studio . 这样可以使用VA等辅助工具,相对MonoDevelop来说高亮也会舒服很多。如果始终使用VS进行代码编辑的话,也不会注释上出现中文乱码的问题,而在MonoDevelop中则会出现乱码。Unity3D 3.5中可以配置默认打开的IDE,推荐选择VS,这样可以避免3.5版本的一个bug,此bug描述如下:
     对于将Visual Studio 2008 安装在非C盘的开发者,如果在Unity编辑器中将默认打开的IDE设为MonoDevelop,那么将会生成版本号为11的sln文件,导致VS2008无法打开对应的sln,除非修改sln文件(使用文本打开,修改其版本号为10即可),但如果有cs文件增删,Unity编辑器会生成新的sln文件,这样又需要手工修改,烦不胜烦。

     解决方案:将Visual Studio 2008安装到C盘,并且将Unity编辑器的默认脚本IDE设置为Visual Studio 2008.如果想对程序进行调试,则在Unity编辑器之外将MonoDevelop启动,再打开Unity编辑器生成好的sln文件。


(2) 调试代码使用MonoDevelop. 将MonoDevelop启动,打开编辑器生成的sln文件,然后将Unity编辑器打开,可以马上在MonoDevelop中进行Attach编辑器进程,也可以等编辑器处于GamePlay状态时进行Attach,都可以。

      其实真想某天能看到使用Visual Studio进行代码编辑和调试,不过目前看起来不太可能,Unity编辑器使用JIT编译出来的dll是Mono的dll,PDB文件什么的,跟微软的标准很可能不一致。我曾经尝试过使用Visual Studio编译出来的dll替换编辑器编译出来的dll,是能够正常运行的,因为Mono对.net进行了自己的一套实现。但通过Visual Studio attach编辑器进程,依然无法调试,很可能在PDB那里出了问题,没能够装载VS产生的PDB。


如果哪位兄台能够在VS中调试Unity3D,请赐教,不胜感激*^_^*

你可能感兴趣的:(windows,.net,脚本,ide,dll,平台)