March 29th, 2023

Maximize Unreal Engine Development with the Latest Integrations in Visual Studio 2022

David Li
Game Dev Product Manager

Introduction

Image vsue hero sot 1568 882 compressed

Since our announcement last month, the team has been working hard on building a new round of Unreal Engine integrations. Today, we are happy to show you the next set of features that can level up your game development productivity. In this article, you will learn about how to stream Unreal Logs, see Unreal Header Tool warnings in Visual Studio, and discover how you can be more productive working with HLSL files. All features mentioned below are available in the latest Visual Studio 2022 Preview.

Visual Studio Toolbox – Game Dev Edition

Curious to see these features in action? I chatted with Leslie Richardson in a special edition of Visual Studio Toolbox to demo many of the recently available game dev features in Visual Studio.

Setting Up Unreal Engine Integrations

Unreal Engine integrations will only show up when you are working on an Unreal Engine project. To ensure these features are active, double check that “IDE support for Unreal Engine” component is enabled in the “Game development for C++” workload in the VS Installer.

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

Stream Unreal Engine Log

We spoke with Unreal Engine developers and discovered the frustration of having to switch between tasks. Furthermore, this was particularly painful when they need to frequently switch between the UE editor and Visual Studio. As part of the continued efforts to reduce this pain, we are happy to introduce the ability to see your Unreal Engine logs without leaving Visual Studio. Upon pressing F5, Visual Studio will stream Unreal Engine logs to the UE Log window.

A screencap showing UE logs in Visual Studio

To see the logs from the Unreal Engine Editor, click View -> Other Windows -> UE Log. When the Visual Studio Debugger is attached to your game, logs are streamed automatically. Alternatively, you can enable cross-process capturing by pressing the “Record” button. As a result, you can stream logs even when the debugger is not attached. To filter your logs, click on the “Categories” or “Verbosity” dropdowns This feature is currently an experimental feature, we would greatly appreciate feedback from you. Leave your thoughts by commenting on Unreal Engine Log Feedback.

Code Analysis for Unreal Engine

Code Analysis is an important part of the software development workflow. By creating opportunities to identify potential errors prior to compilation, you can save valuable time in your developer inner-loop. Today, we are adding the first of many Unreal Engine specific Code Analysis checks designed to make you more productive.

In Visual Studio, you can now see warnings and errors generated by the Unreal Header Tool. Upon saving a file, Visual Studio will run the Unreal Header Tool in the background. Next, Visual Studio will display any warnings or errors in the Error List or as a purple squiggle in the editor. For additional information, please visit the documentation page for Unreal Header Tool.

A screen capture of Unreal header tool warnings as part of UE specific code analysis in Visual Studio

This feature is off-by-default. To enable the feature, please go to “Tools -> Options -> Environment -> Preview Features” and check the box by “Code Analysis with Unreal Header Tool (C++)”. We look forward to hearing from you about UE Code Analysis. Please leave feedback by commenting in the UE Code Analysis Feedback Ticket. Stay tuned for more Code Analysis checks in the upcoming previews.

HLSL Tools by Tim Jones

Creating shaders in game development is an important workflow for game developers. We worked with Tim Jones, the author of the popular HLSL Tools extension, to bring syntax highlighting, statement completion, and more to Visual Studio natively. Today, HLSL Tools is now available as part of Visual Studio.

A screen shot of HLSL Tools in visual studio with syntax highlighting in a HLSL file.

To take full advantage HLSL Tools, ensure that the “HLSL Tools” component is activated. This component is conveniently located in the “Game development with C++” and “Game development with Unity” workloads. Additionally, it can also be installed as an individual component in the Visual Studio Installer.

Image showing HLSL Tools enabled in the "Game development with C++" workload in the Visual Studio Installer

Feedback Wanted!

With the latest Unreal Engine Integrations in Visual Studio 2022 17.6 Preview 2, we aim to empower game developers through innovative and powerful tools. We are dedicated to this goal and this release is just one step towards our vision of a streamlined game development process. Your feedback has been instrumental in shaping our development path. We encourage you to continue to share your feedback by reaching out through Developer Community, surveys, Twitter (@VisualC), or email at visualcpp@microsoft.com. Thank you for your continued support. Together, we can drive game development to new heights with Visual Studio 2022.

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!

3 comments

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

  • Alex Syniakov

    Do you plan to add support of C++ modules?

  • Alberto Mikulan

    Great! You're doing a great job!

    I would like to suggest 2 features:
    -Add Unreal Engine Class context menu option, so we don't need to run the unreal editor each time we want to create a deriver UClass from our project.
    -Add the Unreal Test Automation tool to Visual Studio (again, so we don't need to run unreal editor to run the tests)
    -Also (i know, third feature, but it's linked to thw previous one ;))...

    Read more
    • David LiMicrosoft employee Author

      Hi Alberto,

      Thanks for the feedback. You can add an Unreal Engine class by right clicking the solution explorer and going to "Add -> Unreal Engine Class" to bring up the wizard. For now, we have made "Empty, Actor, Character, Pawn" classes available. Are there any other classes we should add? Let us know.

      For the UE testing tools, would you please make a feature suggestion on Developer Community? This will help us gauge community interest.

      Thanks again!

      Read more