Visual Studio 2013 Tools for Unity

Microsoft Free

Write and debug your Unity 3D games inside Microsoft Visual Studio.

(80) Review
Visual Studio
Download (242,030)
E-mail Twitter Digg Facebook
Add to favorites
Reviews (80)
Q and A (182)
Sign in to write a review
Sort by:

by Lordinaire | July 29 2015

Great tools !

by SDAS_Hodgson | July 20 2015

Great tool.

It's saved me lots of time, and love the price.

by DG Osborne | July 18 2015

Thanks for this! Having Visual Studio for Unity development is a must.

by XenStalker | June 12 2015

by formulahendry | April 23 2015

by Protostar Dean | April 21 2015

Great Tool!
However since getting this latest update Unity seems to be crashing very frequently when I am attached.

by 金奇 | April 18 2015

very good

by Bakinovski | April 16 2015

While I am debuging I can't see exceptions in debuger.
For example in such source code I can't see object exception at line with Debug.Log
throw new Exception("test exeption");
catch (Exception exception)
UnityEngine.Debug.Log("Test exeption was thrown!");
Do you have the same issue? If it is bug do you plan to fix it?

P.S. Tool is realy grate - thanks for it.

Sebastien Lebreton April 20 2015
| Edit |


Yes, at this time, the exception object is not properly added to the debugging context so that you will not be able to inspect it using Watch window.

We will add support for that in the final release of VSTU 2.0.


by Kuato4 | April 13 2015

by QuYong | April 11 2015

very useful tools for Unity game developing, forget about the MonoDevelop

by KingRecycle | April 11 2015

New version doesn't work for 32-bit so I can't use it anymore. Please fix this.

But other than that it's better than using anything else in my opinion.

Sebastien Lebreton April 11 2015
| Edit |


We have just re-uploaded a new installer with proper x86 support.
Can you please download the file again and try to install it ?

Sebastien Lebreton [MSFT]

by CodePiao | April 07 2015

Very Cool .

Use VS 2013, coding for Game。

by AByrd | April 06 2015

A few issues with

Output is now spamming "The thread 0x<stuff> has exited with code 0" at a rate of about 2 per second.

The Error List now flickers open and closed frequently.

Sebastien Lebreton April 09 2015
| Edit |


When debugging, we've always notified what's happening in the output window, including thread creation and death.

You can configure VSTU to not send the Unity console to VS this will avoid the flicker you're seeing. You can do it from Unity, in the menu Visual Studio Tools -> Configuration and uncheck Send Console to Visual Studio.

by nu Assets | March 30 2015

Although the system has some minor bugs, it's probably one of the mightiest add-on you can get for Unity 3D. The integration is 99.9% seamless and its usability is pretty nice. If you're used to work with VS - you probably are as a professional - there's no way around it!

Well done!

by CoRuMmo | March 10 2015

Cannot come back to mono develop. I can't simply stand its interface anymore.
Long life Visual Studio tools for Unity!
Many thanks for this must-have tool.

by AdamNash_FM | March 03 2015

by Yatajga | February 20 2015

by Chad Keating | February 20 2015

by Mosy.Galaar | February 17 2015

I absolutely love this extension. It is a must for any Unity Project that
you are using Visual Studio to code.

My only real complaints are that it is not working properly with Unity
for Console game development, and that every time I get a new version of
Unity I have to reinstall it. The first should be fixed, the other is a
problem with Unity and not solvable by the dev team.

by chall3ng3r | February 06 2015

I started off my Unity development with 4.2 with MonoDevelop on Windows, it was okay. But I missed the awesomeness of Visual Studio. I tried this toolkit before MS bought them, it wasn't quite polished, but after MS bought it, its been really great.

I really like intelli-sense and refactoring and debugging features UTVS provides. Anyone starting with Unity on Windows, I would highly recommend to use this toolkit, it makes things a lot easier and fun.

There's one suggestion:
Please publish the UTVS extension on Unity's Assets Store, rather than copying it in Unity's install folder. When I update Unity, it removes the extension as well, so I have to manually copy it in Unity folder.

When UTVS is installed via Assets Store, it will be kept in Windows user profile, separate from Unity install folder, and also I can update it from within Unity.

Sebastien Lebreton February 11 2015
| Edit |

Thanks, yes we are thinking of something more streamlined for our package. Stay tuned !

1 - 20 of 80 Items   
Sign in to start a discussion

  • Feature Request
    4 Posts | Last post Sun 7:49 PM
    • VSTU has been an absolutely awesome tool for a long time now, and I'm looking to integrate it more deeply into my studios development process. I've come across a few small hiccups that I'd like to share.
      We have reusable code that gets used in all of our various projects. These tools are versioned separately and live in their own VS solution. This solution is built into managed DLLs with .mdbs.
      What I'm trying to accomplish is an extremely streamlined development experience where the tools source is able to be viewed, modified, built, and debugged all from the normal Unity VS solution, but there are a few "quality of life" concerns.
      1) Added project dependencies are removed.
      If I add the tools projects to the Unity solution, then set the Unity projects to depend on them, the dependencies will get blown up when the solution changes. If it weren't for this, it would be possible to have a single step compile in VS where it would compile both the Unity projects and the tools projects and deploy (post build step) the modified tools to the Assets folder. This would be *awesome* for workflow.
      2) "Go To Definition" on a tools symbol navigates to the Object Browser for the DLL, instead going to the tools source file.
      This is likely the most difficult to address, but would do wonders for workflow. The cause is that the Unity projects have references to the compiled DLLs in the Assets folder, not to the tools projects. Strictly speaking, this is "correct" behavior, but it introduces a disconnect when navigating from the Unity project code into the tools project code. One solution here is to allow us to set specific references to be ignored and not added to the VS solution. If I could do that and issue 1 above was addressed I'd be able to 'replace' the tools DLL reference with a reference to the tools project and "Go To Definition" would go straight to the tools source.
    • 3) Double clicking a log statement in the Unity Console won't take you to source files in the tools project.
      It will only take you to the highest point in the stack that's in the Unity projects, despite the fact that the stack contains the full path and line number to the tools source because of the .mdbs. In a few cases this is desired (we have a wrapper around Debug.Log that we want to ignore so it takes us to the line where the information was actually logged), but most of the time it is not. It would be great if the default behavior took you to the source line, even if it's in one of the added tools projects. It would also be great if this were optional (e.g. would ignore methods in the stack decorated with [DebuggerHidden] or similar).
      4) Solution folders are erased when the Unity VS solution is updated.
      The tools solution has multiple projects. I'd like to be able to collapse everything related to the tools in the VS Solution Explorer. Right clicking the solution allows me to add a folder solution folder that I can parent the tools projects under. But when Unity changes the solution file (e.g. when a reference is added or removed in one of the projects), these folders will disappear and projects end up at the root level in the Solution Explorer again. 
      Issues 1 and 2 are the big ones here. With those out of the way, VSTU will provide a fanstastic workflow where external DLL projects are treated almost completely identically to source code in the Assets folder, and that would be simply amazing.
      As always, thanks for the great piece of software.
    • Hello,
      Thanks for your suggestions and your time, this is really appreciated. Yes we are aware of that and we want to improve the whole workflow.
      Currently I think you can achieve #1 and #2 by using our custom API.
      I made a demo project on my github page:
      Can you have a look and see if it can help you ?
      Sebastien Lebreton [MSFT]
    • I'll check it out and provide feedback this week. Thanks for the heads up.
      Is there a way to enable email notifications for discussions here?
  • File names converted to lower case
    4 Posts | Last post Wed 6:20 AM
    • Hi,
      I'm using VS2013 via Parallels, Unity 5.0.1p1 and Tools version 1.9.9. Sometimes, for reasons I can't figure out, the file names get renamed as lowercase whenI save - e.g. MyClass.cs to myclass.cs. This of course causes issue in Unity. I can force the file to save as camel case by simply saving the file again. Oddly, the file name in VS doesn't appear to change. I can't be sure.
      Looks like there have been problems with Unity doing this in the past, but nothing I could find recently. Any thoughts?
    • Hello,
      Do you hit this issue every-time or randomly ? If you are able to find a way to easily reproduce it would be great.
      Sebastien Lebreton [MSFT]
    • Sorry for the late response. I haven't been able to identify repro steps for this, but it does seem to be associated with Unity crashing. It is also happening in VS2015 preview, but with far less frequency - in fact only once in the last month. 
      I'll keep an eye out for it happening again and try to figure out if there are clear steps to it, but so far it looks random.
    • I'm getting file renaming messages few times a day, usually on the files that I modify. Something (Unity, VS2015, VSTU) is renaming from camel case to lower case and than back to camel case.
      Is there some way to turn this off?
      I'm running Unity on OSX, and have noticed this issue for the first time when I upgraded from Unity 5.1.3 to 5.2.2, and I'm getting few times every day since then.
      See example of error, renaming both ways within a minute.
      Renamed .meta file 'Assets/Game/Src/Game/Params/Combat/MegaShipParams.cs.meta' to 'megashipparams.cs.meta' because the .meta file had an inconsistent case.
      Renamed .meta file 'Assets/Game/Src/Game/Params/Combat/megashipparams.cs.meta' to 'MegaShipParams.cs.meta' because the .meta file had an inconsistent case.
      I'm using VS2015 inside Parallels to edit files, it might be VS that's renaming them, but I've never had this issue before till I upgraded unity. The class name inside the file is camel case as well.
      I've just realised I'm using as well, I'll try to disable that.
  • VS2013 "Attach to Unity" button does nothing
    6 Posts | Last post November 20, 2015
    • Hello,
      I am running Unity 5.2.2f1 with Visual Studio 2013. I have Visual Studio 2013 tools for Unity installed. When I open a script from Unity, it opens VS2013 properly as it should. I also imported the packages Visual Studio tools for Unity. I am on Windows 10.
      My Problem: when I click on "Attach to Unity' in VS2013, nothing happens. The button becomes unavailable for 3 seconds as if VS was trying to connect but then nothing. No error message but my breakpoint won't hit.
      Any idea what could be going wrong?
    • I have exactly the same setting than when I was running the extension on Windows 7. Could it possibly be a privilege issue with Windows 10 that prevents VS from connecting to Unity?
    • Did you check your firewall settings ? Seems like there is a timeout trying to connect to the debuggee. 
      Sebastien Lebreton [MSFT]
    • What kind of parameter am I looking for?
    • I deactivated Windows's firewall and my own (bitdefender) but it didn't change anything :(. When I click attach to unity, I just have a message saying that the build is successful in the output window, but nothing else.
    • Is there any debug tools or information that could at least help me figure out at what  point the "Attach to Unity" is failing?
  • unity tools 2013 wont install
    3 Posts | Last post November 05, 2015
    • I have downloaded and installed this package and windows sees it installed because when i run the installer again it gives me the option to repair.  However in visual studio I don't have the Debug > Attach to unity option.  Also when I open extensions and updates unity tools is not listed.  
    • I amusing Visual Studio Ultimate 2013 with update 5.  Unity 4.9.x, on windows 10
    • On rare cases, the extension is not properly registered. Can you try to repair VS and/or VSTU ?
      You can also try to manually run devenv /setup to register all extensions.
      Sebastien Lebreton [MSFT]
  • Can VS2013 Tools for Unity Support default remote?
    2 Posts | Last post November 05, 2015
    • I am using remote debugging,and there are too many Unity remote run in my local network,so It's very hard for me to find my remote every time I want to debug.
      So is there a way to set a DEFAULT remote,set it to the top of the list or just connect it and I don't bother to find my own Unity Instance.
    • Yes you can setup persistent debug targets, just go to Tools/Options/Tools for Unity in Visual Studio then enable "Use saved Debug Targets" and setup it using the proper host/IP.
      You can also use temporary debug targets to easily reconnect to a previous one.
      Sebastien Lebreton [MSFT]
  • Can VS2013 Tools for Unity Support default remote?
    1 Posts | Last post November 04, 2015
    • I am using remote debugging,and there are too many Unity remote run in my local network,so It's very hard for me to find my remote every time I want to debug.
      So is there a way to set a DEFAULT remote,set it to the top of the list or just connect it and I don't bother to find my own Unity Instance.
  • Can VS2013 Tools for Unity Support default remote?
    1 Posts | Last post November 04, 2015
    • I am using remote debugging,and there are too many Unity remote run in my local network,so It's very hard for me to find my remote every time I want to debug.
      So is there a way to set a DEFAULT remote,set it to the top of the list or just connect it and I don't bother to find my own Unity Instance.
  • Unity changes my VS solution configuration
    2 Posts | Last post October 29, 2015
      Im using Unity 5.2 and Visual Studio Professional 2013. I use to serialize/deserialize json text into objects. I have to set up the solution to Framework 3.5 to work. But Unity constantly changes the project to Framework 3.5 full base class library, changes the solution target platform to "Any CPU" (I need "x86"), and adds a references of json to the EDITOR project (I just need it on the regular project).
      How I prevent Unity to do this?
      NOTE: In previous version of UnityVS plugin (where you import in Unity) you can wrote a script for this. But in this versions Microsoft already has the UnityVS integrated in Visual Studio.
      Anyone else having this issue?
    • Hello David,
      Even with the native integration, we are still in charge of generating project files if VSTU is enabled. So our API is still available and our custom assembly SyntaxTree.VisualStudio.Unity.Bridge.dll is still referenced in Editor projects, so you should be able to fine control the solution/project generation.
      Regarding Json.NET, I think there are lots of forks designed for Unity (AOT/iOS support etc.). 
      Sebastien Lebreton [MSFT]
  • VSTU in Mac on 5.2 / 5.3?
    2 Posts | Last post October 15, 2015
    • I primarily develop for iOS, so my machine is a Mac and I run Unity on the Mac. On the same machine, I run Windows in a VM so I can use Visual Studio.  In Unity 5.1, it was possible to install the VSTU package in the Unity project on the mac side, and share the folder into the VM to access the project in Visual Studio.  I could even attach the debugger from VS to Unity on the Mac side, across the VM boundary, which was awesome.
      After upgrading to 5.2, the Visual Studio Tools menu is gone in Unity and reimporting the VSTU package has no effect.  From the native support post, it sounds like this is intentional and all I would have to do is set VS as the external script editor for Unity, but VS is not an option on the Mac.  Running Unity in the VM is also not practical as performance is poor.
      I understand that this is probably not an officially supported scenario, but I'm very disappointed that this broke.  Several engineers on my team use this same setup, as it really gives you the best of both worlds for iOS development.  If there's any way this can be supported again (even if we have to manually import the package), that would be appreciated.
    • Hello,
      Yes Unity broke our Mac support in 5.2. They are aware of that and the fix is coming, hopefully in their next patch release.
      Sebastien Lebreton [MSFT]
  • issue
    2 Posts | Last post October 02, 2015
          撰写 at 11:01 下午
          my unity version is 5.2.1f1 personal
          my visual studio is 2013 profession
          After install the latest VSTU[2.1.0], nothing changed in unity about menu, I can not see the vstu info on the left bottom corner. and the .sln is not generated any more.
          I can open VS if double clicked the file, but attach is not OK
          How can I do?
    • Starting with Unity 5.2, you have a native integration with VSTU.
      Check that Visual Studio is your preferred editor in Unity.
      Please also consult the following link:
      Sebastien Lebreton [MSFT]
1 - 10 of 182 Items