Search Unity

  1. Unity 6 Preview is now available. To find out what's new, have a look at our Unity 6 Preview blog post.
    Dismiss Notice
  2. Unity is excited to announce that we will be collaborating with TheXPlace for a summer game jam from June 13 - June 19. Learn more.
    Dismiss Notice
  3. Dismiss Notice

Better IDE than Visual Studio for Mac

Discussion in 'Code Editors & IDEs' started by undevable, Jul 2, 2021.

  1. undevable

    undevable

    Joined:
    Dec 25, 2020
    Posts:
    140
    So I got a Mac about a month ago. I downloaded Unity and Visual Studio for Mac. Then, I started working, and VS for Mac is just terrible. The first thing I see is that there is no option to download optional modules, like C++, if I want it. It just comes out of the box with Unity. Great, right? Yeah, that's great for Unity developers, but if I happen to want to code in C++ or Python, or anything else, I gotta get a new IDE instead of VS for Mac.
    Okay, that doesn't matter for you Unity devs. So let's see, I open it up, and it's slow at opening up. Yeah, Visual Studio is a big program, so it takes time to open up. Well, it takes almost double the time to open something up, than on Windows. I code a bit, and then it crashes. It's crashed a couple of times now. Is it because I have an M1 chip? Now, I just want to switch to another IDE. It's just simply not good for Mac. It doesn't even have great Git integration. With Windows, just a quick look at the bottom of the screen, and then I see the branch I'm in, the uncommitted changes, and an option to commit straight from VS. With Mac it's not good. They just have many complex tabs at the bottom saying, "Blame, Changes", and no option to commit. Does anyone know another IDE that I could switch to, that also has good integration with Unity? Thanks for hearing me rant.
     
  2. Murgilod

    Murgilod

    Joined:
    Nov 12, 2013
    Posts:
    10,307
    VS for Mac is absolute trash. It's just Xamarin, which was pretty much always clowned on for being an absolutely trash IDE. At this point, I'd say that Visual Studio Code, with GitHub Integration and actual working Unity support, is your best bet.
     
    undevable likes this.
  3. undevable

    undevable

    Joined:
    Dec 25, 2020
    Posts:
    140
    Yeah, I was thinking for going for that too. Probably making VS for Mac bad is just another sneaky Microsoft trick for getting people to buy Windows.
     
  4. Deleted User

    Deleted User

    Guest

  5. undevable

    undevable

    Joined:
    Dec 25, 2020
    Posts:
    140
  6. Murgilod

    Murgilod

    Joined:
    Nov 12, 2013
    Posts:
    10,307
    It seems like a lot but it's definitely one of those pieces of software where it can EASILY justify the cost. If you're open to a paid option, it is worth at least checking out the trial.
     
  7. Deleted User

    Deleted User

    Guest

    Is that much for the amazing tool you gonna use every single day? The only tool the programmer needs to pay for?
    It's the only one that comes with Unity-specific features out of the box.

    It's worth every penny.
     
    Meltdown likes this.
  8. undevable

    undevable

    Joined:
    Dec 25, 2020
    Posts:
    140
    Yeah, I'll check out the trial and see how I like it. The only problem is that it's per year.
     
  9. Murgilod

    Murgilod

    Joined:
    Nov 12, 2013
    Posts:
    10,307
    Actually, they have something in regards to that that I find to be pretty reasonable: a perpetual fallback license

    https://sales.jetbrains.com/hc/en-gb/articles/207240845-What-is-perpetual-fallback-license-

     
    undevable likes this.
  10. SunnySunshine

    SunnySunshine

    Joined:
    May 18, 2009
    Posts:
    994
    I run windows but I can vouch for VSC in general. I had to migrate from VS to VSC simply because VS eventually became too slow to be usable. No major problems with VSC so far, but it does work differently in many regards to VS. The biggest annoyances so far are these:

    1. When subscribing to an event, you can't just type "+=" and press TAB to generate code, you actually have to type the function name. (The actual function can be generated with ctrl+. (dot) shortcut though).
    2. Only symbols visible to the current namespace and imports are available in intellisense (in VS 2019 it automatically uses the correct namespaces if missing.)
    3. Debugging is iffy. When enabling it, it's not guaranteed to work. It might just freeze everything in Unity (even when not running anything) and you have to disable it and enable it again before working. You also have to do a first time set up of debugging before it works, but it's fairly straight forward.
    4. The latest unity plugin (3.0.2) on marketplace doesn't work. You need to downgrade to 2.7.5.
    5. If adding a breakpoint during a break, the code will continue to run automatically and it won't break on any of the breakpoints until next loop. Luckily, stepping seems to work though.
    6. No quick stepping (in VS 2019 you could just go to line with cursor and press icon to go there).
    Other than that, my experience has been good. It's truly bliss clicking a program icon/file name and it actually opens in a way that feels responsive. (VS was so bad I actually became reluctant to create new code files in Unity and opening them since that would freeze everything for half a minute.)

    Some other things to point out in general with VSC:
    1. ctrl+p to search project to open file (rather than ctrl+,).
    2. ctrl+t to search for symbols.
    3. ctrl+shift+p to run a command (VERY useful, once you learn commands it's so much faster to work with than UI).
    4. ctrl+. to generate code for different scenarios.
    5. F2 to rename symbol (not ctrl+r+r).
     
    Last edited: Jul 3, 2021
    undevable likes this.
  11. Zarconis

    Zarconis

    Joined:
    Jun 5, 2018
    Posts:
    234
  12. angrypenguin

    angrypenguin

    Joined:
    Dec 29, 2011
    Posts:
    15,646
    Where are you seeing that? The prices I'm seeing are far higher...

    Edit: Oh, I see. For "individual use" that's the price. Fingers crossed that doesn't come with a limited license.

    Edit 2: It's basically a floating license vs. a user specific license. Both allow commercial use, but businesses are specifically not allowed to purchase individual licenses, they have to buy the floating organisation license. The pricing isn't bad either way if it'll increase productivity.
     
    Last edited: Jul 3, 2021
  13. Murgilod

    Murgilod

    Joined:
    Nov 12, 2013
    Posts:
    10,307
  14. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    21,683
    No. VS for Mac (aka Mono Develop) was bad before they acquired Xamarin. It might have had a chance had they invested resources into developing it but they decided to instead start from scratch with Visual Studio Code and the result is a much more solid code editor.
     
    undevable and Deleted User like this.
  15. Rastapastor

    Rastapastor

    Joined:
    Jan 12, 2013
    Posts:
    591
    I am really amused developer is concerned about the miniscule cost of IDE he will make money off from.
     
    Deleted User likes this.
  16. xjjon

    xjjon

    Joined:
    Apr 15, 2016
    Posts:
    625
    Quite strange is that the pricing from the other products (such as IntelliJ or WebStorm) show a higher "All products price"
    $649 instead of $249. From the Rider page it seems to be the cheapest.

    To the OP, just adding another vouch for Rider. I use many of the Jetbrains products daily for the past 10 years and they are amazing. IntelliJ (Java) is my favorite IDE and when they came out with Rider it was a huge improvement from VS and I switched over immediately.
     
    Deleted User likes this.
  17. sxa

    sxa

    Joined:
    Aug 8, 2014
    Posts:
    741
    Also have a look at Script Inspector 3 on the asset store. Runs inside Unity. Currently $18
     
    Ryiah likes this.
  18. neginfinity

    neginfinity

    Joined:
    Jan 27, 2013
    Posts:
    13,642
    It depends on your region.

    $139 is a decent price for a perpetual license. But that one's a subscription.

    For comparison, VS Code is free, blender is free, aseprite is cheap+perpetual, clip studio can be acquired for $50 (and $220 if you're hungry for that book editing feature), LMMS is free and so on.

    So with all that in mind VSCode is probably the best option.
     
  19. xjjon

    xjjon

    Joined:
    Apr 15, 2016
    Posts:
    625
    Do you mainly use VSCode? I use it from time to time but have never gotten to "enjoy" it. I mostly just use it when I want to use Azure plugins that aren't on other IDEs.

    Tried installing a bunch of plugins but found that the intelliSense and other similar tools aren't really as good as in Rider/IntelliJ or even (Visual Studio + ReSharper).

    Maybe there are some plugins I am missing.. but I find the features from ReSharper mainly the hardest to replicate in VS Code.
     
    Deleted User likes this.
  20. neginfinity

    neginfinity

    Joined:
    Jan 27, 2013
    Posts:
    13,642
    For unity? Yes, I'm primarily using VS Code. It is fairly fast and starts up quickly. I don't have any real reason to switch to anything else, to be honest. (Especially at $135/year pricetag).

    I've also briefly tried it for C++/CMake, but the integration is iffier (have to click a button on taskbar and can't start debugging through F5 like usual unless you start it in a specific environment) and I haven't played with that much. I also used it for python, because integrating autocompletion for blender types (bpy and so on) for some reason is easier to do with VS Code than it is with PyCharm.
     
  21. angrypenguin

    angrypenguin

    Joined:
    Dec 29, 2011
    Posts:
    15,646
    You know better than this. :p

    Yes it's a "subscription", but after 12 months you keep the version you're on. It's just updates you "miss out" on, just as you would without a sub anyway.

    Also, compared to other IDEs with unrestricted commercial licensing the prices are comparatively low. That's why I thought the "individual" one might be restricted.

    I'm just trying it out, but immediately I suspect that the Unity-specific debugging tools alone could save more than the asking price in professionally valued time in a fraction of the subscription period. Looks like the built-in code analysis could be handy, too.

    It's really sluggish compared to VS, though.
     
    Deleted User likes this.
  22. xjjon

    xjjon

    Joined:
    Apr 15, 2016
    Posts:
    625
    Hmm, from my experience Rider is really quick compared to VS. It uses less memory for me and runs well even on Mac.

    On Windows sometimes the indexing may be slow due to Windows Defender.

    upload_2021-7-3_23-53-0.png

    Check the event log in the bottom right to see if it has any suggestions on speeding up.
     
    angrypenguin likes this.
  23. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    21,683
    Yes, but then that means it's not $139 for a perpetual license but $1,668.
     
  24. angrypenguin

    angrypenguin

    Joined:
    Dec 29, 2011
    Posts:
    15,646
    Take another look at @Murgilod's screenie. ;)
     
  25. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    21,683
    Funny thing is I have looked at the product, licensing, and pricing pages multiple times yet my brain automatically thinks "monthly" whenever I discuss subscriptions. :p
     
    Deleted User likes this.
  26. angrypenguin

    angrypenguin

    Joined:
    Dec 29, 2011
    Posts:
    15,646
    Thanks for the tip, will do.
     
  27. undevable

    undevable

    Joined:
    Dec 25, 2020
    Posts:
    140
    Just want to let you know that I'm 11, and that's why I don't want to buy it since it's a lot for me right now. I'm not doing game development for school, but is it somehow still possible for me to get a student license?
     
  28. Deleted User

    Deleted User

    Guest

    It's entirely free for students and schools. Your teacher probably just needs to register your school to their licensing system. Have no idea how that's work ;)

    https://www.jetbrains.com/rider/buy/#discounts?billing=yearly

    Respect that you want to spend your time on programming than just playing games ;)
     
    undevable likes this.
  29. undevable

    undevable

    Joined:
    Dec 25, 2020
    Posts:
    140
    But, I'm not doing it for school, so will I still be eligible? Also, it says it is for non-commercial education purposes, but I'm doing commercial work. So I don't think I'm eligible for the student plan.
     
    Last edited: Jul 4, 2021
  30. Deleted User

    Deleted User

    Guest

  31. undevable

    undevable

    Joined:
    Dec 25, 2020
    Posts:
    140
  32. xjjon

    xjjon

    Joined:
    Apr 15, 2016
    Posts:
    625
    You could apply to github student, Jetbrains IDEs are included there. I think Github accepts students easier than directly at jetbrains.

    If that doesn't work, visual studio code is a good alternative though on Mac. It's faster than regular visual studio. Just make sure to get the right plugins for the language you are working in and customize it to increase your productivity.
     
    Deleted User and undevable like this.
  33. neginfinity

    neginfinity

    Joined:
    Jan 27, 2013
    Posts:
    13,642
    I'm simply not going to buy any subscription-based software. I dislike this pricing model.
     
    undevable likes this.
  34. undevable

    undevable

    Joined:
    Dec 25, 2020
    Posts:
    140
    I see that the only problem is that GitHub student needs my school email address, and the school doesn't allow senders outside the organization to send emails, so I can't verify the email. I'll just go with VS Code for now, then.
     
  35. angrypenguin

    angrypenguin

    Joined:
    Dec 29, 2011
    Posts:
    15,646
    I didn't take this tip, but I didn't have to. It was probably just the indexing of the project, because after a while it got nice and snappy fast for most things.

    After using it for a bit over a week, here are my thoughts for anyone who cares:
    • Getting used to the different behaviours from VS took a little while. At first they were actively annoying because they're not what my muscle memory was used to. It has built-in helpers for much of this (the first time it does something it often asks if you want to keep it or change behaviour). I'm definitely appreciating some after a bit of getting used to them, others not so much, but there's plenty of configurability.

    • In particular, I am constantly finding myself with extra pairs of parentheses or braces because it auto-inserts them everywhere but, unlike VS, doesn't overwrite them when I type my own. Probably a preference I should find.

    • The many and varied rules it wants to enforce are... annoying! Probably not for the reason you'd think, though. The rules are fine, and if I were adopting this at the start of a project I'd just also adopt its rules and be happy. But we're at the end of a large project and there's no way I want to change conventions now.

    • On that note, I think that stuff would be a great positive for a team starting on a new project. A heck of a lot of the "by convention" stuff is just done for you by the tool. Instead of deciding on standards, they have a good set you can just adopt which are entirely automated.

    • The Unity-specific features are sweet. Debugging seems more reliable with Unity than it was in Visual Studio, which is the kicker for me. It hasn't once locked up or made Unity unresponsive, which was regular with VS 2019. I would pay the asking price for this alone.

    • On top of general reliability, it builds a lot of stuff in directly which had to be done manually in VS. Want to know what GameObject a script is attached to? You don't have to navigate through the properties, it's shown right there in the debug window.

    • It also has a fair bit of Unity-specific code analysis built in. I like this, but I also find that it does add quite a lot of visual noise. For instance, it flags all "unityNativeObject == null" checks with a warning about the check being expensive. That's cool and useful, but it also means my code is scattered with little yellow squiggles for stuff that's not on any critical path. It's removed some cognitive load but replaced it with visual noise. Again, I can probably find a setting to turn that off, and then just enable it during optimisation.
     
    Deleted User, undevable and Ryiah like this.
  36. Rastapastor

    Rastapastor

    Joined:
    Jan 12, 2013
    Posts:
    591
    The code analysis at the end of project may be annoying but its a great feature to have it helps u to write proper code from the start :)

    Every day at work I use Intelij Idea and Webstorm for java backend and frontend development so its natural for me to use Rider, also it has a lot better Unity related features. Also all the stuff that was mentioned here is configurable :)
     
  37. Baste

    Baste

    Joined:
    Jan 24, 2013
    Posts:
    6,353
    You've probably already noticed, but when you get one of the warnings you don't care for, you don't have to go to dig in the preferences to find one that matches, you can just do:

    upload_2021-7-14_14-10-27.png

    But yeah, to back up what everyone else is saying, VS for Mac/Xamarin Studio/MonoDevelop was always a bad product. They got away with it 7-8 years ago when Visual Studio was even worse than it was now and that was the only other real product on the market. These days VS Code is free and just straight up better, so there's no reason for it existing.

    Rider is better, but pricy. I could probably live with VS Code if the debugger was competent, but it's not.
     
    Deleted User, angrypenguin and Ryiah like this.
  38. undevable

    undevable

    Joined:
    Dec 25, 2020
    Posts:
    140
    Rider is basically the IDE version of VS Code. But I could live with VS Code too, the only problem I have is that for some reason other auto-completion works, but the explanation that comes whenever you hover over a keyword doesn't.
     
  39. neginfinity

    neginfinity

    Joined:
    Jan 27, 2013
    Posts:
    13,642
    In rare cases it glitches out. In this situation you can close VSCode, elete all *.vcproj file, regenerate them and try again. It usually fixes it.
     
  40. angrypenguin

    angrypenguin

    Joined:
    Dec 29, 2011
    Posts:
    15,646
    Actually, thanks for that tip. :) I hadn't noticed it.

    I guess it'd depend a lot on local economics. Personally speaking as a professional developer, I'm more than confident that this would easily pay itself off over the course of a year. And even for hobby projects, just avoiding the pain of the unreliable VS-Unity plugin is a win.
     
    Deleted User and Ryiah like this.
  41. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    21,683
    Plus Visual Studio is only free as long as you keep within the seat limit which is a mere five.

    https://visualstudio.microsoft.com/vs/community/
     
    undevable and Deleted User like this.
  42. Ubrano

    Ubrano

    Joined:
    Jul 23, 2017
    Posts:
    20
  43. Spy-Master

    Spy-Master

    Joined:
    Aug 4, 2022
    Posts:
    838
    Rider is still excellent and the best integrated solution, but is paid. VSC is passable if you manage to set it up with plugins that match how you work, but the C# Dev Kit extension, used by the Unity extension that’s the recommended way to use it with Unity, uses the Visual Studio license model, so there are constraints on who can use the free (Community) edition.

    They both have specific UPM packages to play nice with Unity, which are maintained by the people who create the editors (Jetbrains/Microsoft). Any other editor would probably need a similar integration package to be usable.
     
    Ubrano and Ryiah like this.
  44. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    21,683
    Nothing has changed. Your only options are VSC and Rider. With the preference being Rider if you can afford it since it has a more in-depth integration with Unity. For example it is aware of the Inspector and will tell you the methods being referenced for things like UnityEvents.

    You don't have to pay for it forever either if you don't need the latest release. You just need to pay long enough to qualify for the perpetual fallback license. It does include all of the bug fix releases for the version you qualify for so it's not like you're cut off completely.

    https://sales.jetbrains.com/hc/en-gb/articles/207240845-What-is-a-perpetual-fallback-license
     
    Last edited: May 23, 2024
    Voronoi, Lurking-Ninja, xjjon and 2 others like this.
  45. xjjon

    xjjon

    Joined:
    Apr 15, 2016
    Posts:
    625
    +1 for Rider. Been using it since they released it and it's the best!
     
  46. scvnathan

    scvnathan

    Joined:
    Apr 29, 2016
    Posts:
    76
    +1 Rider, I still love it

    Also, you get a discount if you continue subscribing:
    https://sales.jetbrains.com/hc/en-gb/articles/206386064-What-is-a-continuity-discount
     
    Spy-Master and Ryiah like this.
  47. Spy-Master

    Spy-Master

    Joined:
    Aug 4, 2022
    Posts:
    838
    Another fun fact about Rider: if you're a student or faculty at an accredited educational institution, you can apply to get a free educational license. You can also get a graduation discount that basically starts you off with the 40% continuity discount right off the bat (source). Just bear in mind that the free education license can't be used for commercial development.
     
    spiney199 and Ryiah like this.