February 16th, 2023

Unreal Engine Integrations Now Available in Visual Studio 2022

David Li
Game Dev Product Manager

A ship from the game Sea of Thieves made by RareUK in Unreal Engine. The image also shows Unreal Engine and Visual Studio logos.

Since the release of Visual Studio 2022, we have been focusing on building a cascade of productivity and performance improvements for game and large project developers. Today, we are happy to share the next set of features specifically aimed towards improving productivity for Unreal Engine development. We have heard and seen a tremendous amount of valuable feedback from you, our game developers. We want to give a special shoutout to all who participated in surveys, left Developer Community suggestions, and chatted with us on social media. These features wouldn’t have been possible without you.

In this blog, you will learn how to quickly see Unreal Engine Blueprint references, assets, and adding default UE classes without ever leaving Visual Studio. In addition, you can now boost your productivity even further with UE macro expansion and the newly re-imagined member list. All features mentioned below are available in Visual Studio 2022 17.5.

“This was a great collaboration to be involved in. Rare’s game team shared their deep knowledge and experience writing and shipping features in the Unreal Engine, and in return we benefit from a set of new tools which help us better understand context, avoid common mistakes, and get to the fun stuff more quickly. Everybody wins!”

-Sean Davies, Technical Director, Rare UK

Setting Up

Viewing Blueprints references, Blueprint assets, and adding UE classes are the current set of Unreal Engine specific integrations. These features are available by default and will only show up when you are working on an Unreal Engine project. To ensure these features are enabled, confirm that “IDE support for Unreal Engine” component is checked in the “Game development for C++” workload in the VS Installer. Both macro expansion and the reimagined IntelliSense member list do not need the component above.

The screenshot of the Game development with C++ workload in the Visual Studio Installer with "IDE support for Unreal Engine" checked.

Additionally, you must also install our free, open-source “Visual Studio Integration Tool” plugin to see Blueprint references and assets. For most UE developers, you can install the plugin through the Unreal Engine Marketplace. If your project is not compatible with Marketplace plugins, you can clone and install the plugin via our GitHub repo. You will find installation instructions located in each respective location.

Displaying Unreal Engine Blueprints and Assets

With the workload component and the plugin installed, Unreal Engine Blueprint references will start appearing as CodeLens hints positioned on top of Unreal Engine Classes, Functions, Properties.

With a quick glance, you can see how many Blueprint references are associated with your UE class, function, or property. Clicking on the Blueprint CodeLens hint will bring up all associated Blueprints. For those Blueprints containing an Asset Path, you can double click on the entry to open the UE Asset Inspector in Visual Studio. The newly opened window can be re-sized or docked for your convenience.

a recording showing how to see blueprint references

Adding Unreal Engine Classes

You can now add new Unreal Engine classes inside Visual Studio. To do so, right-click on your project folder in the Solution Explorer, then click Add -> UE Class… to open the Add New Item Wizard.

Image showing the context menu upon right clicking the project in the solution explorer. UE class wizard will be opened after clicking Add then UE Class

Once the Add New Item window is opened, you will be able to add one of 4 Unreal Engine class templates.

A screenshot of UE Class wizard showing 4 class templates: Empty, Actor, Character, Pawn

Expanding Unreal Engine Macros

One valuable piece of feedback on UE development is the pain felt when working with Unreal Engine macros. We want to provide a way of increasing your productivity when working with long UE macros. You can now read and understand macros more easily with a new monospaced font and formatted display while hovering over macros. Also, you can now copy the expanded macro should you wish to compare with another macro or paste the full macro elsewhere. Furthermore, “Expand Inline” will allow you to see the macro in the IDE with its full expansion. While this feature request originated from UE developers, we hope you will also find this feature useful in your non-UE C++ projects.

screenshot of expanded macro upon hovering, with new options to copy or expand inline

Reimagined Member List

Another piece of feedback we often hear from Unreal Engine developers is the lengthiness of Visual Studio’s IntelliSense Member List. Compared to most projects, the member list for Unreal Engine projects could potentially have hundreds of entries. Even with IntelliCode and Predictive IntelliSense turned on, we have heard the pain when trying to find the correct IntelliSense suggestion. You will find a reimagined member list for C++ projects. The reimagined member list promotes items to the top of the list with new criteria, including matching type items. If you have enabled IntelliCode along with this feature, the suggested entries will be ordered at the top of the member list. You will see in the tooltip whether an entry was suggested from IntelliCode or Predictive IntelliSense.

We are currently testing this feature. It will gradually become available in the next VS Previews. Your feedback is especially important during this time.

Even More C++ Productivity Features

We are hard at work building features that will improve the experience for all C++ developers, including Unreal Engine Developers. For more information, please see the latest productivity feature blog.

Feedback Wanted!

The features you see today are only a portion of our sustained efforts to improve game developer productivity. We will continue to build Unreal Engine integrations throughout Visual Studio 2022. Your feedback through Developer Community, surveys, and social media channels has made these improvements possible. We thank you for your valuable comments. These enhancements are a continuation of our focus on improving productivity for game developers.

In addition, please continue to help shape the development of Visual Studio by talking to us in the comments below, on Twitter (@VisualC), or via email at visualcpp@microsoft.com

Upgrade to Visual Studio 2022

Download the latest version of Visual Studio 2022 to take advantage of these Unreal Engine integrations today!

Author

David Li
Game Dev Product Manager

I am a video game developer focused PM on the Visual C++ Team. Talk to me about video games!

14 comments

Discussion is closed. Login to edit/delete existing comments.

  • Yohann Martel

    Hi,

    Is it possible to know where vs-ue-tools.json should be located?

    From the doc, it should be in “$Env:Temp\vs-ue-tools.json”.
    But I think it’s not the right path, and it won’t work with multiple projects.

    Thanks a lot,
    -Yohann

    • David LiMicrosoft employee Author

      Hi Yohann,

      This is an example we’ve used in the docs to debug the command to manually invoke the plugin.

      It is for troubleshooting any issues and is not required for the actual usage in Visual Studio The path in that section is an example of where to put the output file and can be any folder you choose.

      • Yohann Martel

        Hi David,

        Yes I'm trying to manually create this file without using the visual studio button.
        On my game production, this visual studio button is not working and do nothing.
        We are using Unreal Engine 5.0 (customized), VS2022 17.5.3 (+ Game dev with c++, IDE support for Unreal Engine, Code lens is enabled).
        I'm able to generate this file using the commandlet without issue.

        Next step will be to generate the file inside the right path...

        Read more
      • Francois Malassenet

        Have the same problem. as a matter of fact, even after a complete reinstall of VS 17.5.3, verification that the plugin is compiled and integrated, the “Menu button” does not show. Any help?

      • David LiMicrosoft employee Author

        Please try these troubleshooting steps. If those don’t work, please create a Developer Community ticket and reply with the link.

  • Dlvry Dryvr

    noyce

  • Justin Poonwah

    Hey, thanks for all the effort! I'm currently developing an Unreal Engine project with Visual Studio community 2022 preview 6! When I heard about this feature I was totally stoked to finally get an insight into where my code was being used in Blueprints.

    After fiddling around and then sending a bug report to Microsoft, I was informed that this only works for usages of blueprint classes whose native parents are classes that you've...

    Read more
    • Łukasz MendakiewiczMicrosoft employee

      I see you have also reported the same on Developer Community here – thank you! Let’s follow the discussion there.

  • hrgell

    If you want to make software developers more productive with Visual Studio, then implement keyboard macros that work across projects, windows, buffers.

    • Łukasz MendakiewiczMicrosoft employee

      Thanks for your comment, hrgell. Visual Studio is using the Developer Community website for tracking feature suggestions. I have found this one regarding adding macros (back). Please be sure to upvote to express your interest in it.

  • Ron Prestenback

    Love it! However, when invoking the commandlet (from within the IDE), the extension currently launches UE4Editor-Cmd.exe, which corresponds to the the "Development Editor" configuration. If that isn't the configuration I've been working with (i.e. if the "Development Editor" binaries are out of date), the "Analyzing blueprints" action will fail with no reported error (just an exit code of 1).

    Each UE solution configuration/platform combination will generate a differently named UE4Editor-Cmd.exe. For the...

    Read more
    • Lukasz MendakiewiczMicrosoft employee

      Hey Ron.
      Thanks for the kind words and the detailed description of the problem. I will create an item in our internal systems for us to look into this more. If you would like to track the status, please feel free to file a report on Developer Community.

  • yuan mnm

    exciting and expecting

  • Vaclav Elias

    That sounds Unreal! 😃