Search Unity

Official Update on the Visual Studio Code package

Discussion in 'Code Editors & IDEs' started by Frederic_Peltier, Jun 30, 2022.

Thread Status:
Not open for further replies.
  1. Frederic_Peltier

    Frederic_Peltier

    Unity Technologies

    Joined:
    Dec 22, 2015
    Posts:
    1
    Hi everyone,

    We want to update you on the state of the Visual Studio Code for Unity package.
    This plugin was a result of one of our hackweek experiments by a few of our former employees. Unfortunately, it’s never been fully functional and hasn’t received any updates for almost two years, bringing you an unstable coding experience. We want to be open with you about its state so that you know what to expect.

    The scripting team has huge projects in the works with a significant impact for a majority of our users (like modernization of .NET and iteration time) and we believe that being clear on what’s on the to-do list and what isn’t will help us focus on them.

    That’s why we’ll be removing the Visual Studio Code for Unity package from the list of packages that will be enabled for new projects by default.

    If you’re using VSCode, and you’ve experienced quality issues, we recommend that you switch to using an IDE that Microsoft is helping us provide support for, such as from Visual Studio Community. There are also multiple other alternatives, such as JetBrains Rider.

    Please notice that we’re not preventing anyone from using VS Code in their projects if they prefer it, the existing plugin will continue to work. Also the plugin is available under the very permissive MIT license that allows to fork the project and create derivative works, so an open source alternative could emerge from the community.

    We will post updates here as we progress with the plan to officially end support for the Visual Studio Code plugin.
     
    tjumma, HallamAkbar, jwinn and 15 others like this.
  2. jiraphatK

    jiraphatK

    Joined:
    Sep 29, 2018
    Posts:
    299
    Thanks for being transparent. It's fine by me. VS community and Raider(especially) is clearly superior IDE for Unity anyway.
     
  3. qumeta

    qumeta

    Joined:
    Jun 10, 2020
    Posts:
    2
    good & bad
     
  4. ujz

    ujz

    Joined:
    Feb 17, 2020
    Posts:
    29
    Been trying to migrate from VS Code for past month. It's going OK but I cannot find a good replacement for Code's deeper referencing functionality. This exists in VS Community (CodeLens), but it only shows references for types and functions. I've also tried Rider's "Usages" but it's clunkier, at least to me.

    I made a quick example below. You can see Code has deeper referencing (my arrows on the left):
    refcomparison.png

    I guess Rider is the next best thing after Code? :(
     
  5. jiraphatK

    jiraphatK

    Joined:
    Sep 29, 2018
    Posts:
    299
    Erm, VSCode had never been good for Unity. From my own experience, I had problems with it constantly; code completion not triggering, code highlighting randomly not working, can't go into definition of method, can't decompile source from another solution etc.
    I tried using Rider and it's night & day difference. I've never looked back. Everything just 'works' and it also teaches me some nice c# patterns too.

    For your use case. There is no reference count that will be shown above variable in Rider that I know of. But I just press ctr+b to find all usages. Having the ref count shown automatically is nice but it's not good enough to regard VSCode as 'best' IDE for Unity.
     
    KillDashNine, Ruslank100 and Ryiah like this.
  6. christopheAS

    christopheAS

    Joined:
    Jun 25, 2019
    Posts:
    18
    We have been using VSCode for the past 5 years without any issue. Our whole workflow is mostly based on it. We have even developed extensions for helping us. So I admit I'm not pleased with this decision. Clearly.
    But I suppose we are in a very small bubble and cannot expect support of another IDE for a small audience.

    VSCode is a wonderful tool that helps us work with the same environment on all of our working stations (Windows + macOS) on all of ours projects, either with Nodejs, TypeScript, PHP or C#. And it is so lightweight. I am not looking forward using Rider or Visual Studio for Mac.
     
  7. Adrian

    Adrian

    Joined:
    Apr 5, 2008
    Posts:
    1,065
    I'm also a happy user of VSCode with Unity. It's not very easy to set up and get started (I guess this thread explains why) but once it's running, it's working very well. I tried to switch to Rider, VS for Mac and am using VS on Windows occasionally but always stuck with VSCode.

    @jiraphatK Go to definition / implementations / references has worked well for me and I prefer the implementation over Rider and VS on Windows. For decompiling, you used to have to enable it in
    omnisharp.json
    but you should now get a prompt to enable it directly in VSCode.
     
    Deleted User and RogDolos like this.
  8. radiatoryang

    radiatoryang

    Joined:
    Jul 7, 2014
    Posts:
    19
    I finally found this thread after seeing a random mention that VS Code support was getting deprecated https://github.com/Unity-Technologies/vscode-unity-debug/issues/206#issuecomment-1141289744

    I guess I'm slightly comforted that the plan is "let it rot" instead of "delete everything in 2 weeks"

    But I have to say, so far this announcement has been handled very poorly. And the dismissive tone in the GitHub issues ("just use Rider") really doesn't address your community's concerns. A lot of us use VS Code, and we may prefer it to VS or Rider for a variety of reasons.

    If the communication on GitHub had been more like this post -- "we won't prevent anyone from using VS Code" -- it would feel less thoughtless of a decision than it does.

    I strongly recommend updating the GitHub readmes and issues to point to this thread
     
    Last edited: Jul 14, 2022
  9. NoTuxNoBux

    NoTuxNoBux

    Joined:
    Oct 2, 2020
    Posts:
    34
  10. rod_lopez

    rod_lopez

    Joined:
    Aug 10, 2017
    Posts:
    21
    I am really, really sorry to hear about this. I think it is a terrible decision.
    Visual Studio Code has become the de facto editor for most devs I work with. Not only it is free, and not only it delivers, but it also, as @christopheAS mentions, has become the platform over which we develop other tools.
    You are making, for cross-plaform development, a poor case for Unity, where now we need to get a license for a tool I like less that also makes Unity less of a good value (now we need to fork for a Unity license and a Rider license).
    Yes, there are free editors, but we work multi-platform and, as said, have invested quite a bit on VSCode.
    I do understand maintaining these things is not easy, and I get that e.g. Rider does a lot of other things, but it feels like Unity is in a position where you should be able to put a couple of people to make the VSCode integration kick mayor ass.
    I have installed Rider and, a week later, have gone back to VSCode (along with most other people in the office) I will ride Unity's VSCode tools until they completely break down. I would hope, very much, that you'll rethink deprecating VSCode support by then.
     
  11. neginfinity

    neginfinity

    Joined:
    Jan 27, 2013
    Posts:
    13,566
    I'm very unhappy about it.

    Visual Studio Community has an infuriating bug in a smart formatter that hasn't been fixed in ages, and is driving me completely nuts, it is bloated, plus it looks ugly as sin.

    I've been using VS Code for years and it has been an incredibly comfortable experience. It is highly likely to become an de fact editor that is present everywhere, and dropping its support is definitely not a good idea.
     
  12. marcospgp

    marcospgp

    Joined:
    Jun 11, 2018
    Posts:
    194
    As a big fan of VSCode I am sad to come across this thread.

    According to Stack Overflow's 2022 developer survey, VSCode is the #1 ranking IDE, used by 74.48% of respondents.

    It does not make sense for Unity to deprecate support of the most popular editor, assuming that Unity makes rational decisions. Sadly, the community seems to have been growing a feeling that Unity's decisions can be quite enigmatic.

    I understand that Unity does not want to prioritize supporting VSCode over other goals. Firstly, I am curious if you guys have at least estimated the effort required to value returned for each of those goals - supporting the most popular editor seems at first thought to be a good decision.

    Secondly, you mention Microsoft is helping you support other IDEs. Have you tried to engage in the same kind of collaboration when it comes to VSCode? If not, why?
     
    Last edited: Sep 16, 2022
  13. hecker_de

    hecker_de

    Joined:
    Mar 28, 2021
    Posts:
    19
    I'm waiting for Unity to pay for my Rider license. Until then I will have to keep using VS-Code. And before you suggest Visual Studio... There IS NO VS for Linux.
     
  14. Simutronics

    Simutronics

    Joined:
    Mar 27, 2015
    Posts:
    1
    @Frederic_Peltier I strongly encourage you guys to reconsider. This is the reality:



    Please change course and support what the majority of people actually use, including our entire studio.
     
  15. Baste

    Baste

    Joined:
    Jan 24, 2013
    Posts:
    6,332
    "Hey I have a random graph with no source! Your company should change course".

    I'm pretty sure that the number of people using eg. PyCharm in Unity is probably closer to 0 that 17.24 %, lol.
     
  16. marcospgp

    marcospgp

    Joined:
    Jun 11, 2018
    Posts:
    194
    It's the Stack Overflow survey I linked to above. I think it's a good source!
     
  17. llim_unity

    llim_unity

    Joined:
    Feb 13, 2020
    Posts:
    12
    Oh, so sad. I too have been using VSCode as my de facto coding tool. And I have Rider license installed. I am not saying Rider is bad, in fact I love it and use it from time to time. It also has far stronger meta features - e.g. quality of life git features - for me.

    But I have not found a replacement anywhere for "Peek" in VSCode, which has been a crucial development-flow tool for me since I started using it years ago. Rider has a similar feature, but I find VSCode's implementation much more elegant.

    I guess I will need to invest more time into using Rider now.

    It was fun while it lasted.
     
    TheSleepyKoala and Arcanelab like this.
  18. joseph114591452

    joseph114591452

    Joined:
    Mar 14, 2020
    Posts:
    28
    Also sad to hear this and encourage Unity to reconsider.

    VSCode strongly aligns with Unity's mission, "We believe the world is a better place with more creators in it".
    VSCode helps lower the barrier for beginners. It's is open source, has a vibrant community (lot's of great plugins), and a great UI/UX.

    Although if data shows that only a small # of users are using VSCode, I can't argue with that.
     
    Last edited: Jan 4, 2023
  19. TCROC

    TCROC

    Joined:
    Aug 15, 2015
    Posts:
    230
    We also use VS Code. I'm hoping Unity reconsiders deprecating this tool.
     
  20. Antypodish

    Antypodish

    Joined:
    Apr 29, 2014
    Posts:
    10,769
    This graph is useless in light of this discussion.

    It does not presents, for what language is each tool used.
    It will contain huge amount of hobbyists-level input into the survey.
    It doesn't show which coding environment is used with Unity specifically.
    Having that, we could see graph's results completely different.

    On other hand, Unity has capability to measure, which tools are used mostly with Unity environment.
    If they have observed that relatively few professionals use code editor which brings little to no money for Unity, vs IDE which has more value to the Unity, it makes sense on their choices.

    Also splitting resources over supporting multiple tools, it is not really feasible.
    Just like Unity had multiple languages support in the past, dropping down to one.

    Since VS Code text editor has open source plugins, let community to handle it.
    It is anyway, what community apparently wanted with Unity plugins, to have source access to be able contributing.
     
    TheSleepyKoala and cdr9042 like this.
  21. ExtraCat

    ExtraCat

    Joined:
    Aug 30, 2019
    Posts:
    52
    Oh yes, forcing people to choose between super bloated Visual Studio where even cursor lags all the time on modern gaming PC, and lifetime JetBrains subscription. A good business move for sure, just not for us end users.
     
    Last edited: Jan 8, 2023
  22. Antypodish

    Antypodish

    Joined:
    Apr 29, 2014
    Posts:
    10,769
    No one is forcing anyone.
    You have open source and MIT tools available. You can use them and maintain as you wish.

    The support just shifts from official to unofficial, thats it.

    It is the same like asking, why your game doesn't support xyz languages. Think from the business perspective.

    It is noce to have, but it is not like a deal breaker.
     
    cdr9042 likes this.
  23. Adrian

    Adrian

    Joined:
    Apr 5, 2008
    Posts:
    1,065
    It's not like Unity is investing resources into the VS/Rider integrations. If you check the VS package, most files only have a Microsoft copyright notice, some have a shared MS/Unity one. The Rider package doesn't have copyright notices per file but only a shared JetBrains/Unity copyright in the license file – I still suspect JetBrains is developing the majority of the integration. The Code integration has only Unity's copyright.

    My suspicion is that Unity has made the decision to have others pay for editor integrations. Microsoft is willing to do this for the paid VS but not for the free Code and now Unity is trying to drop Code. Wether that's just a threat to get MS to change their mind or wether they'll actually drop it we'll have to see.
     
  24. andyz

    andyz

    Joined:
    Jan 5, 2010
    Posts:
    2,269
    This is a little surprising but if not VS Code then VS Community is good if a little 'heavy' (I use). But I wonder is there data on what IDEs people use for Unity, % split?
    Is Visual Studio, paid or community, the majority and then Rider, before VS Code etc?!
     
    TheSleepyKoala likes this.
  25. ExtraCat

    ExtraCat

    Joined:
    Aug 30, 2019
    Posts:
    52
    Guess the same can be said about Gigaya, eh?
     
  26. Antypodish

    Antypodish

    Joined:
    Apr 29, 2014
    Posts:
    10,769
    Thats only true, if Gigaya source code is released to the public.
     
  27. AtlasAllure

    AtlasAllure

    Joined:
    Jan 28, 2023
    Posts:
    1
    It actually doesnt matter.
    You guys talk like you dependent on this extension for vs code to work.
    The grand majority is going to continue vs code like nothing ever changed and even more are going to switch to it over time, since VS is just completely overbloated 90s style for anyone to care.
    And maybe one day their stance will change if some companies pushing for it, once more VS holdovers switch to vs code as well.
    But yeah the question is: What functionality did it serve even before?
    You just open the folder with vs code. Anything else is just general csharp config.
     
    TheSleepyKoala likes this.
  28. Adrian

    Adrian

    Joined:
    Apr 5, 2008
    Posts:
    1,065
    No you don't. Starting from Unity 2019.2, it is the VSCode extension that's generating those sln/csharp project files. If you remove the extension and project files and try to open the project folder in VSCode, you'll only get basic editing, no IntelliSense (as there won't be any sln/csproj).

    Maybe with Unity's switch to using .Net project files directly in a few years, it will be possible to just open the project folder in VSCode. But for now, we're dependent on the editor packages to generate the necessary and compatible project files for each editor. Just the fact that Unity went this way, from one shared project generator to three separate generators, one for each supported editor, shows that there's currently not one single project format that would work well in all three editors.

    There's also the Debugger for Unity extension that has been deprecated. It still works for me but might break in the future and then debugging Unity in VSCode will be either impossible or much more cumbersome.
     
    bn-l, Thaina and rod_lopez like this.
  29. stonstad

    stonstad

    Joined:
    Jan 19, 2018
    Posts:
    659
    Unity @Frederic_Peltier please update documentation to prevent users from embarking on a dead-end misadventure converting a project to VS Code. The decision to deprecate VS Code happened six months prior and these docs still list VS Code as an option for debugging.

    Link: https://docs.unity3d.com/2023.1/Documentation/Manual/ManagedCodeDebugging.html (2023.1:)
    "Unity supports the following code editors to debug C# code:" ... "Visual Studio Code (Experimental)"

    Please remove Visual Studio Code from the list because a) it is clearly unsupported and b) does not facilitate debugging, especially with Unity 2023.1. Or hire more devs and add support.
     
  30. Thaina

    Thaina

    Joined:
    Jul 13, 2012
    Posts:
    1,162
    Just notice it was deprecated today in unity newest version

    Well, to be fair, vscode was the opensource itself and encourage freedom of making everything as free community. So even unity abandon its own extension, it still possible to freely forked and continue it as community by ourselves

    Yet it still depressing that unity choose to not care about vscode as unity ide, given that vscode is also the best and free and most lightweight IDE we currently have
     
  31. ThomasVeil

    ThomasVeil

    Joined:
    Aug 7, 2014
    Posts:
    7
    That's circular: if not many Unity devs use VSCode, then that's because it lacks support. Though I'm not even sure your guess is right, since even the old Debugger has 1.5 million installs.
    You can see that the surveys includes a big range of users - and a lot of well paid professionals. And why wouldn't hobbyists matter? That's kinda the entry crowd Unity was made for.

    The graph shows how increasingly dominant VSCode is. To drop this one, but support the smaller and dwindling platform makes little sense. To point everyone to a pay-for runner-up interface isn't great either.

    If they don't make it work ... then yeah, they force you to use other tools.

    I wish Unity would reconsider - this seems like a tough task to push on open source devs.
     
  32. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    21,141
    It's nowhere near as complex as everyone is making it out to be. VS Code and the C# extension that you install to be able to use the editor are what's handling the actual work. Unity's extension just sets up the project files and a couple of misc tasks like passing arguments. We're talking less than two thousand lines only half of which is code.

    That said just because it's being officially discontinued doesn't mean it will necessarily be abandoned. Unity's devs have their own passion projects that they maintain on the side. Here's an example of one of them.

    https://github.com/xoofx/UnityNuGet
     
    Last edited: Mar 3, 2023
    TheSleepyKoala and Thaina like this.
  33. pillowfightio_conrad

    pillowfightio_conrad

    Joined:
    Mar 4, 2017
    Posts:
    10
    What is the preferred editor solution for Linux at this time? Is it Rider only?
     
    Ares2048 and goncalo-vasconcelos like this.
  34. Adrian

    Adrian

    Joined:
    Apr 5, 2008
    Posts:
    1,065
    According to the documentation (which hasn't been updated and still lists VSCode) – yeah, Rider is your only supported option on Linux.

    Actually wondering what the "multiple other alternatives" to VS are that @Frederic_Peltier mentioned in the first post…
     
  35. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    21,141
  36. kurifodo

    kurifodo

    Joined:
    Jan 17, 2019
    Posts:
    33
    I'm another voice on team VS Code bandwagon. A debugger is invaluable for developing software, and with as much market usage as VS Code continues to have, it's sad Unity will not officially support a debugger.
     
  37. Slashbot64

    Slashbot64

    Joined:
    Jun 15, 2020
    Posts:
    322
    Pretty disappointing, VScode it far surpasses VisualStudio/Rider in customization and extensions at this point, debugging wasn't great and integration with Unity could have done with the support... real shame VS and Rider are both pretty bloated and both lacking areas customization and extensions... a real shame
     
  38. marbasdev

    marbasdev

    Joined:
    Sep 21, 2022
    Posts:
    1
    plz help us
     
  39. Neto_Kokku

    Neto_Kokku

    Joined:
    Feb 15, 2018
    Posts:
    1,751
    Agreed, this is Unity cutting corners as usual. JetBrains provides the Rider integration and Microsoft the VS one, but the VSC was done by Unity and they don't want to spend money on something others could be doing for them.
     
    Thaina likes this.
  40. george_unity322

    george_unity322

    Joined:
    Jul 27, 2020
    Posts:
    1
    wow. really astonishing ball drop by Unity. who uses jetbrains these days?.
     
  41. ManuelRauber

    ManuelRauber

    Joined:
    Apr 3, 2015
    Posts:
    122
    Lot of professional developers.
     
    CodeSmile, Ryiah and Spy-Master like this.
  42. TheSleepyKoala

    TheSleepyKoala

    Joined:
    Aug 24, 2018
    Posts:
    24
    I'm letting the folks here know I decided to start a community fork to continue supporting the Visual Studio Code for Unity package. To provide better service to the community, I have created a fork with complete SDK-style support, auto-generation for omnisharp.json and .editorconfig, and other valuable features, such as support for Microsoft.Unity.Analyzers.

    I would appreciate constructive feedback, as I always seek to improve and refine my work. Please feel free to utilize Omnisharp's modern features.

    For those interested, the link to my fork can be found here: https://github.com/Chizaruu/com.tsk.ide.vscode.

    TL;DR: I improved the Visual Studio Code for the Unity package with valuable features and created a new fork. Feedback is appreciated.
     
    ivank, GCatz, orionsyndrome and 12 others like this.
  43. Thaina

    Thaina

    Joined:
    Jul 13, 2012
    Posts:
    1,162
    Thank you very much. Even though I can bet unity will regret this decision and come back to revive this package back into unity default package in the future
     
  44. ArtyIF

    ArtyIF

    Joined:
    Oct 13, 2014
    Posts:
    36
    Considering how Unity has an official Linux editor, which I use, what would be a good IDE for C# that is free and runs on Linux without Wine that Unity supports? Visual Studio is only available on Windows and Mac, and Rider costs US$149 a year, which not only I can't afford, but as someone in Russia, I couldn't pay for it even if I had the money.
     
  45. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    21,141
    Aside from Visual Studio Code (which requires you either use a deprecated plugin or use a community plugin) there aren't any. There is the less expensive Script Inspector 3 but if you're dead set on a free editor you're going to have to use VSC or make do with a lack of code analysis and autocompletion.
     
    Last edited: Apr 10, 2023
    TheSleepyKoala likes this.
  46. Mogeley

    Mogeley

    Joined:
    Jun 14, 2014
    Posts:
    1
    Is Unity going to drop support for C# too??? If so I'm going to another engine all together...

    C# is built by Microsoft, Microsoft made VS Code and supports VS Code. It makes sense to support the editor that Microsoft supports for it's frameworks.
     
    luistapia2998 likes this.
  47. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    21,141
    Unity does support the editor that Microsoft supports for it's frameworks: the full Visual Studio.

    https://visualstudio.microsoft.com/

    Incidentally Microsoft doesn't label Visual Studio Code as an editor for .NET nor does it come with that functionality built-in. Instead it's labeled as the "top pick for JavaScript and web developers" and web development frameworks are built-in. Microsoft doesn't even make the extensions we use to support C# development in Visual Studio Code.

    upload_2023-4-13_15-5-23.png

    Unity is transitioning to the newest releases of C# and .NET not abandoning it.

    https://forum.unity.com/threads/unity-future-net-development-status.1092205/
     
    Last edited: Apr 13, 2023
    ROBYER1 likes this.
  48. Deleted User

    Deleted User

    Guest

    There is Consulo, a FOSS IDE that has support for unity. consulo.io I've tried it and it worked decently for code editing

    There is also DotDevelop, a fork of MonoDevelop, but it's only available in source form, so I haven't tried it with Unity dotdevelop/dotdevelop: MonoDevelop is a cross platform .NET IDE (github.com)
     
    Last edited by a moderator: Apr 19, 2023
    Ryiah likes this.
  49. ROBYER1

    ROBYER1

    Joined:
    Oct 9, 2015
    Posts:
    1,454
    Anyone else had notification from the latest VS Code of this? Seems VS Code debugging support is now dead in the water.

    upload_2023-5-4_11-5-11.png
     
  50. Adrian

    Adrian

    Joined:
    Apr 5, 2008
    Posts:
    1,065
    The debugger extension has been deprecated for many months but it hasn't been easy to notice. The latest update of VScode now added a popup that informs you when deprecated extensions are used.

    Opened an issue in vscode-docs to get the VSCode Unity documentation updated: https://github.com/microsoft/vscode-docs/issues/6273

    It's funny/depressing to read through months-old GitHub issues where people remind Unity staff to update their documentation and it still hasn't been updated.
     
    marcospgp, thenetimp and Thaina like this.
Thread Status:
Not open for further replies.