Visual Studio 2019 Unity Intellisense

broken image


How to fix IntelliSense Support for Unity 2019/2020/2021/2017/2018/2022 in Visual Studio 2017/2018/2019/2020/2021/2022. Easy to do and quick fix for Visual S. Customize the coding environment exactly the way you want – choose your favorite theme, color, fonts, and all the other settings. In addition, create Unity script methods inside Visual Studio quickly by using the Implement MonoBehaviours and the Quick MonoBehaviours Wizards.

19 April 2020: We've updated this article with a contributed solution from one of our readers in the comments section.

One of the biggest perks of using Microsoft's Visual Studio to write your Unity scripts is IntelliSense — a code completion aid in Visual Studio that offers suggestions as you write your code, and contextually presents you with information about classes, properties and methods that you are working with.

Given Unity's enormous scripting API, IntelliSense is a tremendously helpful feature, especially for coders who are beginning their foray into developing games and software with Unity; and while we'd love to say that IntelliSense is automatically set up and linked to Unity's API when you install it with the Unity Editor, sometimes that's just not the case. So, if you've got both Unity and Visual Studio set up, but find that IntelliSense is still not offering Unity API suggestions, then this guide is for you.

There can be many reasons why IntelliSense is failing to work properly on your device, and we are assuming that you've already scoured the Internet a fair bit before stumbling on our article. Hence, we've put together a table of contents of sorts below, so if you've already tried some of the solutions we have, you can skip right through them.

  1. Getting IntelliSense working

Article continues after the advertisement:

1. Is my IntelliSense not working?

For IntelliSense to detect and work with Unity's API, Visual Studio needs to:

  1. Be linked to the Unity Editor, and;
  2. Have the appropriate extensions installed (read further to find out what they are)

If you've installed Visual Studio via Unity Hub, this can have been automatically set up, but not always. Due to the bevy of ways which you can install Unity and Visual Studio, misconfigurations can happen, and you might end up with Visual Studio not integrating itself into Unity, and an IntelliSense feature that is not properly linked to Unity's API.

Visual

We've found that, when installing some versions of Unity 2019 and 2020, Visual Studio does not always integrate with Unity's API by default. So if things are not working properly, it might not be caused by misconfiguration on your end.

To check if IntelliSense is properly set up, open any script from the Unity Editor, and look out for 2 things:

  1. Whether the top-left dropdown says Miscellaneous Files. If it does, then IntelliSense is not set up.
  2. Try declaring a Unity variable, like a GameObject. If IntelliSense is properly set up, Visual Studio should have an auto-complete suggestion for you before you finish typing.
Visual studio code intellisense not showing

2. Getting IntelliSense working

So if IntelliSense isn't working for you, what should you do?

a. Open your scripts from Unity

Before you try anything else from here, first make sure that your scripts are opened from within Unity, i.e. whenever you want to edit your scripts, double-click on them in the Unity Editor so that Visual Studio is opened by Unity.

If IntelliSense still doesn't work when you do this, then continue onto the steps below:

b. Setting Unity's External Script Editor

From the Unity Editor, access the Preferences window from Edit > Preferences. Then, click on the External Tools tab.

Set the External Script Editor to the version of Visual Studio that you installed alongside Unity. Then, restart Visual Studio and see if IntelliSense now works. If it still doesn't, then you might be missing…

If Visual Studio doesn't appear on the dropdown, you will have to use the Browse… option (pictured above) to find it. It's typically under C:Program Files (x86)Microsoft Visual Studio2019CommunityCommon7IDEdevenv.exe for Windows devices.

Article continues after the advertisement:

c. Visual Studio Tools for Unity

To install this, open Visual Studio and go to Tools > Get Tools and Features.

Note: You'll need administrator permissions to open this window, as it makes changes to the Visual Studio installation on your computer.

Once the installer is open, go to Workloads and find Game development with Unity. Check the box, and then click on the Modify button on the bottom-right corner to begin installation.

A popup may ask you to close certain processes before beginning installation. If this happens, close your Visual Studio project and the Unity Editor application.

When installation completes, restart both Unity and Visual Studio, then check to see if IntelliSense now works.

Intellisense for unity api messages

The Games development with Unity workload actually installs 2 additional Visual Studio components — Visual Studio Tools for Unity and C# and Visual Basic. You can install both modules individually by going to the Individual components tab, and checking both components in the list that is shown.

Article continues after the advertisement:

d. Check your .NET API compatibility level

If IntelliSense still refuses to work, you can open the Unity Editor and head to Edit > Project Settings and access the Player (or Player Settings) tab. Scroll down to the Other Settings sub-tab, and find the Api Compatibility Level dropdown under the Configuration heading.

You want to set the Api Compatibility Level to a different option, and see which is the one that works for your device.

e. Regenerating your Unity project files

If the above solutions we've proposed did not work for you, you can also try this solution from one of our comment contributions.

Note: Back up your Unity project before trying this, as we are deleting some essential project files and letting Unity regenerate them.

  1. Close both Visual Studio and Unity on your device.
  2. Remove all .sln and .csproj files in your Unity project folder.
  3. Remove the .vs and Library folders in your Unity project folder.
  4. Re-open the project in Unity, then go to Assets > Open C# Project to open Visual Studio.

3. Conclusion

Visual Studio 2019 Unity Intellisense

As with the other articles on the blog, we'd love if you leave a comment below, especially if you:

  1. Find any errors in this article, or;
  2. Find an IntelliSense fix that is not listed in this article

Your comments will add on to the information that is already here, and help other future readers!

Article continues after the advertisement:

-->

Overview

Visual Studio Code Not Showing Suggestions

Visual Studio Tools for Unity is a free Visual Studio extension that turns Visual Studio into a powerful tool for developing cross-platform games and apps with Unity.

While the Unity editor is great for putting your game world together, you can't write your code in it. With Visual Studio Tools for Unity, you can use the familiar code editing, debugging and productivity features of Visual Studio to create editor and game scripts for your Unity project using C#, and you can debug them using Visual Studio's powerful debugging capabilities.

But Visual Studio Tools for Unity is more than that; it also has deep integration with Unity editor so that you'll spend less time switching back and forth to do simple tasks, provides Unity-specific productivity enhancements, and puts the Unity documentation at your fingertips.

Compatible with Visual Studio Community on Windows and macOS and bundled with Unity

Visual Studio and Visual Studio for Mac Community is available for free, and is bundled with Unity installs. Visit the Visual Studio Tools for Unity getting started documentation for more information about installation and setup.

IntelliSense for Unity messages

IntelliSense code-completion makes it fast and easy to implement Unity API messages like OnCollisionEnter, including their parameters.

Superior debugging

Studio

We've found that, when installing some versions of Unity 2019 and 2020, Visual Studio does not always integrate with Unity's API by default. So if things are not working properly, it might not be caused by misconfiguration on your end.

To check if IntelliSense is properly set up, open any script from the Unity Editor, and look out for 2 things:

  1. Whether the top-left dropdown says Miscellaneous Files. If it does, then IntelliSense is not set up.
  2. Try declaring a Unity variable, like a GameObject. If IntelliSense is properly set up, Visual Studio should have an auto-complete suggestion for you before you finish typing.

2. Getting IntelliSense working

So if IntelliSense isn't working for you, what should you do?

a. Open your scripts from Unity

Before you try anything else from here, first make sure that your scripts are opened from within Unity, i.e. whenever you want to edit your scripts, double-click on them in the Unity Editor so that Visual Studio is opened by Unity.

If IntelliSense still doesn't work when you do this, then continue onto the steps below:

b. Setting Unity's External Script Editor

From the Unity Editor, access the Preferences window from Edit > Preferences. Then, click on the External Tools tab.

Set the External Script Editor to the version of Visual Studio that you installed alongside Unity. Then, restart Visual Studio and see if IntelliSense now works. If it still doesn't, then you might be missing…

If Visual Studio doesn't appear on the dropdown, you will have to use the Browse… option (pictured above) to find it. It's typically under C:Program Files (x86)Microsoft Visual Studio2019CommunityCommon7IDEdevenv.exe for Windows devices.

Article continues after the advertisement:

c. Visual Studio Tools for Unity

To install this, open Visual Studio and go to Tools > Get Tools and Features.

Note: You'll need administrator permissions to open this window, as it makes changes to the Visual Studio installation on your computer.

Once the installer is open, go to Workloads and find Game development with Unity. Check the box, and then click on the Modify button on the bottom-right corner to begin installation.

A popup may ask you to close certain processes before beginning installation. If this happens, close your Visual Studio project and the Unity Editor application.

When installation completes, restart both Unity and Visual Studio, then check to see if IntelliSense now works.

The Games development with Unity workload actually installs 2 additional Visual Studio components — Visual Studio Tools for Unity and C# and Visual Basic. You can install both modules individually by going to the Individual components tab, and checking both components in the list that is shown.

Article continues after the advertisement:

d. Check your .NET API compatibility level

If IntelliSense still refuses to work, you can open the Unity Editor and head to Edit > Project Settings and access the Player (or Player Settings) tab. Scroll down to the Other Settings sub-tab, and find the Api Compatibility Level dropdown under the Configuration heading.

You want to set the Api Compatibility Level to a different option, and see which is the one that works for your device.

e. Regenerating your Unity project files

If the above solutions we've proposed did not work for you, you can also try this solution from one of our comment contributions.

Note: Back up your Unity project before trying this, as we are deleting some essential project files and letting Unity regenerate them.

  1. Close both Visual Studio and Unity on your device.
  2. Remove all .sln and .csproj files in your Unity project folder.
  3. Remove the .vs and Library folders in your Unity project folder.
  4. Re-open the project in Unity, then go to Assets > Open C# Project to open Visual Studio.

3. Conclusion

As with the other articles on the blog, we'd love if you leave a comment below, especially if you:

  1. Find any errors in this article, or;
  2. Find an IntelliSense fix that is not listed in this article

Your comments will add on to the information that is already here, and help other future readers!

Article continues after the advertisement:

-->

Overview

Visual Studio Code Not Showing Suggestions

Visual Studio Tools for Unity is a free Visual Studio extension that turns Visual Studio into a powerful tool for developing cross-platform games and apps with Unity.

While the Unity editor is great for putting your game world together, you can't write your code in it. With Visual Studio Tools for Unity, you can use the familiar code editing, debugging and productivity features of Visual Studio to create editor and game scripts for your Unity project using C#, and you can debug them using Visual Studio's powerful debugging capabilities.

But Visual Studio Tools for Unity is more than that; it also has deep integration with Unity editor so that you'll spend less time switching back and forth to do simple tasks, provides Unity-specific productivity enhancements, and puts the Unity documentation at your fingertips.

Compatible with Visual Studio Community on Windows and macOS and bundled with Unity

Visual Studio and Visual Studio for Mac Community is available for free, and is bundled with Unity installs. Visit the Visual Studio Tools for Unity getting started documentation for more information about installation and setup.

IntelliSense for Unity messages

IntelliSense code-completion makes it fast and easy to implement Unity API messages like OnCollisionEnter, including their parameters.

Superior debugging

Visual Studio Tools for Unity supports the robust debugging features that you expect from Visual Studio:

Visual Studio Community 2019 Unity Intellisense Not Working

  • Set breakpoints, including conditional breakpoints.
  • Evaluate complex expressions in the Watch window.
  • Inspect and modify the value of variables and arguments.
  • Drill down into complex objects and data structures.

Integrated suggestions for best practices and performance insights

Write better code that captures the best practices with Visual Studio's deep understanding of Unity projects.

Visual Studio 2019 Unity No Autocomplete

CodeLens support for Unity scripts and messages

Unity scripts and message functions are decorated with hints to make it easier to recognize what's provided by Unity and what's your code.

Note

CodeLens support is available in Visual Studio 2019.

Intellisense For Unity Api Messages

Optimized view of all your scripts to match Unity

Visual Studio 2019 Unity Autocomplete Not Working

The Unity Project Explorer (UPE) is an alternative way to view you project files over the standard Solution Explorer. The UPE filters the files shown and presents them in a hierarchy that matches Unity (View > Unity Project Explorer in Visual Studio 2019).

Note

Visual Studio Intellisense For Unity

The Unity Project Explorer is available in Visual Studio 2019. In Visual Studio for Mac, the Solution Pad has similar behaviour by default for Unity projects - no additional views are required.





broken image