Catch up with Visual Studio Tools for Unity on Mac

Abdullah Hamed

Abdullah

Since the launch of Visual Studio for Mac, we have been continuously working on improving Visual Studio Tools for Unity (VSTU). Visual Studio for Mac has been the default IDE for Unity on Mac and it provides free world class support for Unity projects through VSTU. VSTU has always offered IntelliSense for Unity messages, Superior debugging, refactoring, Unity project browser, and familiar shortcuts. Since we launched Visual Studio for Mac, we have also updated the Tools with new features. If you have not tried Visual Studio for Mac with Unity recently, here are some of the new features available to you right now.

Roslyn Diagnostics and quick fixes for Unity

We have replaced NRefacatory with the C# Roslyn analyzer which will give you improved warnings and analysis of your Unity code. We also launched suppressors for general C# analyzers that are not applicable to a Unity project to reduce the noise as you write your code.

A screenshot of a cell phone Description automatically generated

Additionally, we open sourced the analyzers so that the whole community can contribute to them. You can find the Analyzers on GitHub and read the full announcement here.

The same Windows Unity Debugger in Visual Studio for Mac

We made sure that the Unity development experience is consistent on both Windows and Mac. To enable this, we replaced the Visual Studio Mac Unity Debugger with the same core Windows Unity Debugger.

Attaching the IDE Debugger to any Unity instance

When debugging a Unity project, you can now press an “Attach to Unity and play” button, which will attach the debugger to the Unity instance. If there are multiple instances of Unity open, the IDE will prompt you to choose the appropriate instance to attach to. Furthermore, we added support for Unity background processes, which will auto-connect the debugger to the main Unity process.

A screenshot of a cell phone Description automatically generated

Added support for automatically refreshing Unity’s asset database on save

When saving a script, Unity will be notified of your changes and it will automatically reflect them in the Unity editor without the need to build or reload your project.

Unity project don’t need to fully build anymore

We changed the default behavior of Visual Studio for Mac to not run a full build for Unity project. Instead, we are using the IntelliSense errors and warnings. You could disable this behavior from the Setting menu option: Preferences -> Tools for Unity -> Disable running MSBUILD on the projects.

A screenshot of a cell phone Description automatically generated

Support for Attaching Android devices through USB

When debugging your games on an Android device, you can now Attach the debugger to an Android player through USB. This will help you debug games running on Android devices.

Support for basic shader code

We now support basic code completion for shader code within Visual Studio for Mac, as well as toggling comments in shader files using the same shortcuts.

Support for pointers in the Debugger

We support viewing array pointers in the debugger now. For example, you can take a pointer expression, then append a comma and the number of elements you want to see.

Summary

As we look into the future, we want to continue to listen to your feedback and continue to developer the features you want to see in Visual Studio for Mac. Please send us feedback using the feedback tool within Visual Studio for Mac, and don’t forget to complete surveys when they pop up in the IDE as they help us drive development of the product. Feel free to use the hashtag #VSTU and mention @visualstudiomac on twitter. We love to make sure we are developing the features you want to use.

1 comment

Comments are closed. Login to edit/delete your existing comments

  • Avatar
    Ethan Lindemann

    I wish I could use Visual Studio for Linux. This is great progress, but it would be nice if the team focused their work on a cross platform approach. Something like OmniSharp, so that everyone can benefit from your work.