diff --git a/docs/ide/managing-assembly-and-manifest-signing.md b/docs/ide/managing-assembly-and-manifest-signing.md
index fc240895fc4..0718c8f2882 100644
--- a/docs/ide/managing-assembly-and-manifest-signing.md
+++ b/docs/ide/managing-assembly-and-manifest-signing.md
@@ -1,7 +1,7 @@
---
title: Manage assembly and manifest signing
description: Explore how to manage an assembly and the advantages of strong-name signing, which gives a software component a globally unique identity.
-ms.date: 04/17/2024
+ms.date: 07/18/2024
ms.subservice: deployment
ms.topic: conceptual
helpviewer_keywords:
@@ -56,7 +56,9 @@ For .NET Core (and .NET 5 and later) C# projects in Visual Studio 2022:
1. Open the project properties window (right-click the project node in **Solution Explorer** and select **Properties**).
1. Under **Build**, look for **Strong naming**, and select the **Sign the assembly** checkbox. Additional options for the key file and delay signing appear when you check the box.
-1. Specify a key file. If you choose to create a new key file, new key files are always created in the *.pfx* format. You need a name and password for the new file.
+1. Specify a key file.
+
+If you don't have a key file, you can use the command line to [create an `.snk` file](/dotnet/standard/assembly/create-public-private-key-pair). You can also use or generate a certificate in a `.pfx` file using the **Publish** process, and in the **Sign manifests** step, you can create a test certificate to use only during development and testing, or for production, use a certificate issued by your IT department or by an authorized source. See [Deploy a .NET Windows Desktop app with ClickOnce](../deployment/quickstart-deploy-using-clickonce-folder.md).
For .NET Framework and Visual Basic projects in Visual Studio 2022, or in Visual Studio 2019:
diff --git a/gamedev/toc.yml b/gamedev/toc.yml
index 66277fe86d0..414837f73c3 100644
--- a/gamedev/toc.yml
+++ b/gamedev/toc.yml
@@ -32,3 +32,11 @@
href: unreal/get-started/vs-tools-unreal-install.md
- name: Quickstart-Visual Studio Tools for Unreal Engine
href: unreal/get-started/vs-tools-unreal-quickstart.md
+ - name: Add Unreal Engine classes, modules, and plugins in Visual Studio
+ href: unreal/get-started/vs-tools-unreal-add-class-module-plugin.md
+ - name: View Unreal Engine Blueprints in Visual Studio
+ href: unreal/get-started/vs-tools-unreal-view-blueprints.md
+ - name: View Unreal Engine logging in Visual Studio
+ href: unreal/get-started/vs-tools-unreal-logging.md
+ - name: View Unreal Engine macros in Visual Studio
+ href: unreal/get-started/vs-tools-unreal-view-macros.md
\ No newline at end of file
diff --git a/gamedev/unreal/get-started/vs-tools-unreal-add-class-module-plugin.md b/gamedev/unreal/get-started/vs-tools-unreal-add-class-module-plugin.md
new file mode 100644
index 00000000000..db484db79ba
--- /dev/null
+++ b/gamedev/unreal/get-started/vs-tools-unreal-add-class-module-plugin.md
@@ -0,0 +1,99 @@
+---
+title: "Add Unreal Engine classes, modules, and plugins in Visual Studio"
+description: "Learn how to add Unreal Engine classes, modules, and plugins to your Unreal Engine project from within Visual Studio"
+ms.date: 07/25/2024
+ms.topic: how-to
+ms.service: visual-studio
+ms.subservice: unreal-engine-tools
+author: TylerMSFT
+ms.author: TWhitney
+manager: MarkL
+#customer intent: As a C++ game developer using Unreal Engine and Visual Studio, I want to add classes, modules, and plugins to my Unreal Engine project from within Visual Studio so that I can stay in my development environment and not have to switch between the Unreal Engine Editor and Visual Studio.
+---
+
+# Add Unreal Engine classes, modules, and plugins in Visual Studio
+
+In this article, learn how to use Visual Studio Tools for Unreal Engine to:
+
+- [Add Unreal Engine modules in Visual Studio](#add-unreal-engine-modules-in-visual-studio)
+- [Add Unreal Engine classes in Visual Studio](#add-unreal-engine-classes-in-visual-studio)
+- [Add Unreal Engine plugins in Visual Studio](#add-unreal-engine-plugins-in-visual-studio)
+
+## Prerequisites
+
+The following must be installed:
+
+- Visual Studio version 17.11 (17.11 preview versions ok) or later.
+- Unreal Engine version 5 or later.
+- Visual Studio Tools for Unreal Engine. See [Install Visual Studio Tools for Unreal Engine](vs-tools-unreal-install.md) for installation instructions.
+- Complete the [Quickstart: Visual Studio Tools for Unreal Engine](vs-tools-unreal-quickstart.md) to download and build the Lyra game and configure it to use Visual Studio Tools for Unreal Engine.
+
+## Add Unreal Engine modules in Visual Studio
+
+You can now add Unreal Engine [modules](https://dev.epicgames.com/documentation/en-us/unreal-engine/unreal-engine-modules) to your Unreal Engine project from within Visual Studio. You no longer have to switch between the Unreal Engine Editor and Visual Studio to add a module, or need to synchronize the Visual Studio solution with your Unreal Engine project file afterwards.
+
+Modules are a way to organize your code in Unreal Engine. They help you group related classes and assets together and organize your code into self-contained units that can be loaded and unloaded at runtime. Creating modules can be tedious and error-prone if you do it manually because it requires editing configuration files and adding boilerplate code. Visual Studio makes it easier to create modules by providing a dialog that guides you through the process and doing the configuration and adding the boilerplate for you.
+
+To add an Unreal Engine module in Visual Studio, follow these steps after completing [Quickstart: Visual Studio Tools for Unreal Engine](vs-tools-unreal-quickstart.md) to download and build the Lyra game. These steps assume that you have the `LyraStarterGame.sln` solution open in Visual Studio:
+
+1. In **Solution Explorer**, choose a project, such as **LyraStarterGame**, where you want the new module to go.
+1. Right-click the project (be sure a project is selected and not a folder) and choose **Add** > **Unreal Engine item...** to open the **Add New Item** dialog for Unreal Engine items:
+ :::image type="content" source="../media/vs-add-new-unreal-engine-item-dialog-module.png" alt-text="A screenshot of the Add New Item menu. Empty Unreal Engine Module is selected.":::
+1. Choose **Unreal Engine Module**, provide a module name in the **Name** field, and then choose **Add** to open the **Add Unreal Engine Module** dialog:
+ :::image type="complex" source="../media/vs-add-unreal-engine-module-dialog.png" alt-text="A screenshot of the Add Unreal Engine Module dialog.":::
+ The Add Unreal Engine Module dialog has a field for the Module name, dropdowns for the Module type (Runtime is selected) and module loading phase (Default is selected). The module path, header, source, and build file paths are listed. The checkbox for Refresh IntelliSense information using Unreal Editor tools is checked.
+ :::image-end:::
+1. Use the drop-downs to select the **Module type** and **Module loading phase**.
+1. Choose **OK** to add the module to the project and update the Visual Studio solution file.
+
+Modules can only be created in the **Source** folder or as a module of a plugin inside the **Plugins** folder.\
+The **Build** path shows where the `Build.cs` file is created. The `Build.cs` file contains configuration information for the module.
+
+## Add Unreal Engine classes in Visual Studio
+
+You can now add Unreal Engine classes to your Unreal Engine project from within Visual Studio. You no longer have to switch between the Unreal Editor and Visual Studio to add a class, or need to synchronize the Visual Studio solution with your Unreal Engine project file afterwards.
+
+To add an Unreal Engine class in Visual Studio, follow these steps after completing [Quickstart: Visual Studio Tools for Unreal Engine](vs-tools-unreal-quickstart.md) to download and build the Lyra game. The steps assume that you have the `LyraStarterGame.sln` solution open in Visual Studio:
+
+1. In **Solution Explorer**, choose a folder where you want the new class to go. In the LyraStarterGame project, you could add a new class to the **LyraStarterGame** > **Source** folder, for example.
+1. Right-click the folder and choose **Add** > **Unreal Engine item...** to open the **Add New Item** dialog:
+ :::image type="complex" source="../media/vs-add-new-unreal-engine-item-dialog-class.png" alt-text="A screenshot of the Add New Item dialog.":::
+ It has options for adding an Unreal Engine Common Classes (which is selected), Empty Unreal Engine Module, and Unreal Engine Plugins.
+ :::image-end:::
+1. Choose **Unreal Engine Common Classes** and then choose **Add** to open the **Add Unreal Engine Class** dialog:
+ :::image type="complex" source="../media/vs-add-unreal-engine-class-dialog.png" alt-text="A screenshot of the Add New Unreal Engine class dialog.":::
+ Options for selecting a base such as Actor, Character, and so on, are visible. There's a field for the class name and a dropdown for the module to add the class to. The paths to the header file and source file are listed. A checkbox is selected to refresh IntelliSense information using Unreal Editor tools.
+ :::image-end:::
+1. Choose a **Class name**. Visual Studio warns you if the name conflicts with an existing class or file.
+1. Choose a **Base class**. Selecting a base class ensures that the right headers and macros are included for that class type.
+1. Choose a module to add to your class to using the **Select a module to add the class** dropdown. The module name is the name of the folder that contains the module.
+1. Select the **Refresh IntelliSense information using Unreal Editor tools** checkbox to choose whether Visual Studio uses Unreal Editor tools to update the IntelliSense information. Choose this to cause the Unreal Build Tool to regenerate the Visual Studio solution file.
+1. Choose **OK** to generate the header and source files for the new class and add them to the Visual Studio solution file. This results in a prompt to reload the project. Choose **Reload** to reload the project.
+
+## Add Unreal Engine plugins in Visual Studio
+
+You can now add Unreal Engine plugins to your Unreal Engine project from within Visual Studio. You no longer have to switch between the Unreal Editor and Visual Studio to add a plugin, or need to synchronize the Visual Studio solution with your Unreal Engine project file afterwards.
+
+To add an Unreal Engine plugin in Visual Studio, follow these steps after completing [Quickstart: Visual Studio Tools for Unreal Engine](vs-tools-unreal-quickstart.md) to download and build the Lyra game. The steps assume that you have the `LyraStarterGame.sln` solution open in Visual Studio:
+
+1. In **Solution Explorer**, choose a folder where you want the new plugin to go. In the LyraStarterGame project, you could add a new plugin to the **LyraStarterGame** > **Source** folder, for example.
+1. Right-click the folder and choose **Add** > **Unreal Engine item...** to open the **Add New Item** dialog:
+ :::image type="complex" source="../media/vs-add-new-unreal-engine-item-dialog-plugin.png" alt-text="A screenshot of the Add New Item dialog.":::
+ It has options for adding an Unreal Engine Common Classes, Empty Unreal Engine Module, and Unreal Engine Plugins (which is selected).
+ :::image-end:::
+1. Choose **Unreal Engine Plugins** and then choose **Add** to open the **Add Unreal Engine Plugin** dialog:
+ :::image type="complex" source="../media/vs-add-unreal-engine-plugin-dialog.png" alt-text="A screenshot of the Add New Unreal Engine plugin dialog.":::
+ There's a list of Plugin types (Advanced is selected), and fields for the plugin name, path, author, description, and URL. There's an Is plugin in beta checkbox (unchecked) and a Refresh IntelliSense information using Unreal Editor Tools checkbox (checked).
+ :::image-end:::
+1. Choose the type of your plugin from the **Plugin type** list.
+1. Provide the **Plugin name**, **Plugin author**, **Plugin Description**, and **Plugin url**.
+1. Check the **Is plugin in beta** box as needed.
+1. Select the **Refresh IntelliSense information using Unreal Editor tools** checkbox to choose whether Visual Studio uses the Unreal Editor tools to update the IntelliSense information. This causes the Unreal Build Tool to regenerate the Visual Studio solution file.
+1. Choose **Add** to generate the plugin header and source files for the new plugin and add them to the Visual Studio solution file. This results in a prompt to reload the project. Choose **Reload** to reload the project.
+
+## Related content
+
+[Visual Studio Tools for Unreal Engine](./vs-tools-unreal-overview.md)\
+[View Unreal Engine Blueprints in Visual Studio](vs-tools-unreal-view-blueprints.md)\
+[View Unreal Engine logging in Visual Studio](vs-tools-unreal-logging.md)\
+[View Unreal Engine macros in Visual Studio](vs-tools-unreal-view-macros.md)
\ No newline at end of file
diff --git a/gamedev/unreal/get-started/vs-tools-unreal-install.md b/gamedev/unreal/get-started/vs-tools-unreal-install.md
index 936e2f5f989..31250973473 100644
--- a/gamedev/unreal/get-started/vs-tools-unreal-install.md
+++ b/gamedev/unreal/get-started/vs-tools-unreal-install.md
@@ -1,7 +1,7 @@
---
title: "Install Visual Studio Tools for Unreal Engine"
description: "Learn how to connect Unreal Engine and Visual Studio. Visual Studio Tools for Unreal Engine offers support for writing and debugging C++ Unreal Engine games."
-ms.date: 08/02/2023
+ms.date: 07/09/2024
ms.service: visual-studio
ms.subservice: unreal-engine-tools
ms.topic: get-started
@@ -12,11 +12,11 @@ manager: Markl
# Install Visual Studio Tools for Unreal Engine
-This article helps you install Visual Studio Tools for Unreal Engine. These tools allow you to do the following from within Visual Studio:
-- view Unreal Engine (UE) Blueprints
-- add UE classes
-- view UE logging
-- view and expand UE macros
+This article helps you install Visual Studio Tools for Unreal Engine (UE). These tools allow you to do the following from within Visual Studio:
+- Add UE classes
+- View UE logging
+- View and expand UE macros
+- View and find references to UE Blueprints
## Prerequisites
@@ -27,20 +27,20 @@ You should have the following installed before you install Visual Studio Tools f
## Install Visual Studio Tools for Unreal Engine
-This article covers installing two tools for connecting Visual Studio and Unreal Engine:
+This article covers installing two tools that connect Visual Studio and Unreal Engine:
-- **Visual Studio Tools for Unreal Engine** are installed with the Visual Studio installer. They enable you to add UE classes, view UE logging, and more, all from within Visual Studio.
-- **Unreal Engine Visual Studio Integration Tool plugin** is installed in Unreal Engine and works with Visual Studio to display information about Blueprint assets in C++ code.
+- **Visual Studio Tools for Unreal Engine** are installed with the Visual Studio installer. It lets you add UE classes, view UE logging, and more--all from within Visual Studio.
+- **Unreal Engine Visual Studio Integration Tool plugin** is installed in Unreal Engine from the Epic Games marketplace. It supports the Unreal Engine test adapter in Visual Studio, which lets you discover, run, manage, and debug your Unreal Engine tests from within Visual Studio. As of Visual Studio 2022 17.10, you no longer need the plugin to view UE Blueprints in Visual Studio, however, you do need it to use the Unreal Engine test adapter in Visual Studio.
-To install Visual Studio Tools for Unreal Engine, follow these steps:
+To install Visual Studio Tools for Unreal Engine:
-1. Type "Visual Studio Installer" in the Windows search box.
+1. In the Windows search box, type "Visual Studio Installer".
1. Look for the installer under the Apps results and double-click it.
-1. When the installer appears, select the version of Visual Studio you are using (if you have multiple versions installed) and then select **Modify**.
+1. When the installer appears, select the version of Visual Studio you're using and then select **Modify**.
1. Select the **Workloads** tab, then select the **Game development with C++** workload.
-1. In the **Installations details** pane, ensure that under **Game development with C++** > **Optional** that **IDE support for Unreal Engine** is selected. This installs what this article refers to as the Visual Studio Tools for Unreal Engine. If you work with the High-Level Shader Language, ensure that **HLSL Tools** is also selected.
+1. In the **Installations details** pane, ensure that under **Game development with C++** > **Optional** that **Visual Studio Tools for Unreal Engine** is selected. If you work with High-Level Shader Language (HLSL) files, ensure that **HLSL Tools** is also selected.
1. Select the **Individual components** tab at the top of the dialog.
-1. Under **Installation details**, expand **Desktop development with C++**.
+1. Under **Installation details** on the right, expand **Desktop development with C++**.
1. Ensure that under **Optional** that **Windows 10 SDK 10.0.18362.0**, or higher, is selected.
1. Select **Modify** to complete the installation.
@@ -48,13 +48,13 @@ To install Visual Studio Tools for Unreal Engine, follow these steps:
## Configure Unreal Engine to use Visual Studio
-Epic Games provides the UnrealVS extension for Visual Studio. The extension makes it easier to build UE projects, set command line arguments, batch build projects, and so on. You don't need to install this plugin to use Visual Studio Tools for Unreal Engine, but it does provide some convenience features. For more information, see [UnrealVS Extension](https://docs.unrealengine.com/using-the-unrealvs-extension-for-unreal-engine-cplusplus-projects/).
+Epic Games provides the UnrealVS extension for Visual Studio. You don't need to install the plugin to use Visual Studio Tools for Unreal Engine. It provides convenience features such as making it easier to build UE projects, set command-line arguments, batch build projects, and so on. For more information, see [UnrealVS Extension](https://docs.unrealengine.com/using-the-unrealvs-extension-for-unreal-engine-cplusplus-projects/).
-Install the Unreal Engine Visual Studio Integration Tool plugin via the [Unreal Engine Marketplace](https://aka.ms/vsituemarketplace) website. It allows you to see Blueprints assets in Visual Studio. The Unreal Engine Marketplace provides instructions for installing the plugin.
+You can install the Unreal Engine Visual Studio Integration Tool plugin via the [Unreal Engine Marketplace](https://aka.ms/vsituemarketplace) website. Search the marketplace for "Visual Studio Integration Tool". The Unreal Engine Marketplace provides instructions for installing the plugin.
:::image type="content" source="../media/unreal-engine-marketplace.png" alt-text="Screenshot of the Unreal Engine Marketplace with the Visual Studio Integration Tool plugin." lightbox="../media/unreal-engine-marketplace.png":::
-If your engine code is built from source or if your project isn't compatible with Unreal Engine Marketplace plugins, install the plugin manually by cloning and installing the plugin from the [GitHub vc-ue-extensions repo](https://aka.ms/vc-ue-extensions). See the [README](https://github.com/microsoft/vc-ue-extensions#unreal-engine-plugin-for-visual-studio) in the repo for instructions to install the plugin. If you have difficulty with the UE plugin, see the [Troubleshooting guide](https://github.com/microsoft/vc-ue-extensions/blob/main/Docs/Troubleshooting.md)
+If you build Unreal Engine from source, or if your project isn't compatible with Unreal Engine Marketplace plugins, install the plugin manually by cloning and installing the plugin from the [GitHub vc-ue-extensions repo](https://aka.ms/vc-ue-extensions). See the [README](https://github.com/microsoft/vc-ue-extensions#unreal-engine-plugin-for-visual-studio) in the repo for installation instructions. If you have difficulty with the UE plugin, see the [Troubleshooting guide](https://github.com/microsoft/vc-ue-extensions/blob/main/Docs/Troubleshooting.md).
For more information about customizations you can make to the Visual Studio IDE to work well with Unreal Engine, see the **Recommended Settings** section at [Setting Up Visual Studio for Unreal Engine](https://docs.unrealengine.com/en-US/setting-up-visual-studio-development-environment-for-cplusplus-projects-in-unreal-engine/).
@@ -72,4 +72,10 @@ We recommend that you keep Visual Studio updated for the latest bug fixes, featu
## Next steps
-Try out some of the features of the Visual Studio Tools for Unreal Engine: [Quickstart: Use Visual Studio Tools for Unreal Engine](vs-tools-unreal-quickstart.md)
+Try out some of the features of the Visual Studio Tools for Unreal Engine:
+
+[Quickstart: Use Visual Studio Tools for Unreal Engine](vs-tools-unreal-quickstart.md)\
+[Add Unreal Engine classes, modules, and plugins in Visual Studio](vs-tools-unreal-add-class-module-plugin.md)\
+[View Unreal Engine Blueprints in Visual Studio](vs-tools-unreal-view-blueprints.md)\
+[View Unreal Engine logging in Visual Studio](vs-tools-unreal-logging.md)\
+[View Unreal Engine macros in Visual Studio](vs-tools-unreal-view-macros.md)
diff --git a/gamedev/unreal/get-started/vs-tools-unreal-logging.md b/gamedev/unreal/get-started/vs-tools-unreal-logging.md
new file mode 100644
index 00000000000..671b5351aa3
--- /dev/null
+++ b/gamedev/unreal/get-started/vs-tools-unreal-logging.md
@@ -0,0 +1,55 @@
+---
+title: "View Unreal Engine logging in Visual Studio"
+description: "Learn how to view Unreal Engine logs from within Visual Studio"
+ms.date: 07/24/2024
+ms.topic: how-to
+ms.service: visual-studio
+ms.subservice: unreal-engine-tools
+author: TylerMSFT
+ms.author: TWhitney
+manager: MarkL
+#customer intent: As a C++ game developer using Unreal Engine and Visual Studio, I want to view Unreal Engine logging in Visual Studio so that I can see the logs without switching between the Unreal Editor and Visual Studio.
+---
+
+# View Unreal Engine logging in Visual Studio
+
+Use the Visual Studio Tools for Unreal Engine (UE) to see UE logging within Visual Studio. This is useful because you can see UE logging without having to switch between the Unreal Editor and Visual Studio.
+
+## Prerequisites
+
+The following must be installed:
+
+- Visual Studio version 17.10 or later.
+- Unreal Engine version 5 or later.
+- Visual Studio Tools for Unreal Engine. See [Install Visual Studio Tools for Unreal Engine](vs-tools-unreal-install.md) for installation instructions.
+- Complete the [Quickstart: Visual Studio Tools for Unreal Engine](vs-tools-unreal-quickstart.md) to download and build the Lyra game and configure it to use Visual Studio Tools for Unreal Engine.
+
+## Add Unreal Engine logging to a sample and see the results in Visual Studio
+
+After completing the [Quickstart: Visual Studio Tools for Unreal Engine](vs-tools-unreal-quickstart.md) to download and build the Lyra game, follow these steps to add Unreal Engine logging to the Lyra game sample and see the log messages in Visual Studio:
+
+1. In Visual Studio, open `LyraGameplayAbility_RangedWeapon.cpp`. Either search for that file in the Search pane of the **Solution Explorer**, or find it under **Games** > **LyraStarterGame** > **Source** > **LyraGame** > **Weapons** > **LyraGameplayAbility_RangedWeapon.cpp**.
+1. In `LyraGameplayAbility_RangedWeapon.cpp`, go to line 477. You should see this function: `void ULyraGameplayAbility_RangedWeapon::OnTargetDataReadyCallback`
+1. Insert the following code at the beginning of the function: `UE_LOG(LogLyra, Log, TEXT("shot fired"));` This creates a log entry, associated with the category `LogLyra`, that logs `shot fired` when this function is called.
+1. Run the sample game in Visual Studio by choosing **Debug** > **Start Debugging**. Give the Unreal Editor a few moments to load the Lyra game.
+1. In Visual Studio, open the UE logging window by choosing **View** > **Other Windows** > **Unreal Engine Log** from the Visual Studio main menu. Or use the UE toolbar button to show the log. For more information about the toolbar, see [Unreal Engine toolbar](vs-tools-unreal-quickstart.md#unreal-engine-toolbar).
+1. In the Unreal Editor, choose the Play button on the toolbar (or `Alt+p`) to start the game.
+1. In the Lyra game, use the `w`, `a`, `s`, `d` keys to navigate the player left to the **Elimination** portal. Position the player over the entry portal to load the game.
+1. Once the game is running, click the mouse button to fire. This creates some log entries in the `LogLyra` category. Now `LogLyra` will appear in the Categories filter for the next step.
+1. Reduce log noise by filtering all but the `LogLyra` category events in the UE logging window as follows: choose the **Categories** dropdown. Choose **(Select All)** at the top of the list to clear all of the log sources. Then select **LogLyra**. In the UE logging window, you should see the log message: `shot fired`:
+
+ :::image type="content" source="../media/vs-unreal-engine-log.png" alt-text="A screenshot of the Unreal Engine Log window showing 'shot fired' events and the Categories dropdown with LogLyra selected.":::
+
+ The events are at the bottom of the log so you might have to scroll down to see them. You could also choose the **Clear** button to clear the log and then fire again to see the log message.
+
+If you find the font color hard to read, you can adjust it under **Tools** > **Options** > **Environment** > **Fonts and Colors**. Change the dropdown **Show settings for:** to **Unreal Engine Log**. In **Display items:** select **Log** and change the **Item foreground** color to something easier to see for you.
+
+Having the UE logging window open while you're debugging is convenient because you don't have to switch to the Unreal Editor to see them.
+
+## Related content
+
+[Visual Studio Tools for Unreal Engine](./vs-tools-unreal-overview.md)\
+[Add Unreal Engine classes, modules, and plugins in Visual Studio](vs-tools-unreal-add-class-module-plugin.md)\
+[View Unreal Engine Blueprints in Visual Studio](vs-tools-unreal-view-blueprints.md)\
+[View Unreal Engine logging in Visual Studio](vs-tools-unreal-logging.md)\
+[View Unreal Engine macros in Visual Studio](vs-tools-unreal-view-macros.md)
\ No newline at end of file
diff --git a/gamedev/unreal/get-started/vs-tools-unreal-overview.md b/gamedev/unreal/get-started/vs-tools-unreal-overview.md
index 2230f7397f8..ec59827d8ec 100644
--- a/gamedev/unreal/get-started/vs-tools-unreal-overview.md
+++ b/gamedev/unreal/get-started/vs-tools-unreal-overview.md
@@ -14,26 +14,23 @@ manager: Markl
![Screenshot of a computer, game controller, and icons for game play.](../../unity/media/hero.png)
-
Visual Studio Tools for Unreal Engine makes it easier to write and debug C++ code for Unreal Engine from within Visual Studio, with features such as:
-* Stream Unreal Engine logs
+* View Unreal Engine logs
* View Blueprint references and assets
* Expand Unreal Engine macros*
* Unreal Engine name convention checker
* Intellisense tuned for Unreal Engine projects*
* Add Unreal Engine classes inside Visual Studio
* See Unreal header tool warnings in Visual Studio
-* Visual Studio performance has been tuned for large projects*
-* Be more productive with HLSL files via syntax highlighting and statement completion
+* Visual Studio performance is tuned for large projects*
+* Be more productive with High-Level Shading Language (HLSL) files via syntax highlighting and statement completion
* These features are available in Visual Studio 17.7 or later without installing Visual Studio Tools for Unreal Engine.
## Supported Visual Studio versions
-Visual Studio Tools for Unreal Engine is available for free and supports:
-
-- Visual Studio 2022 Version 17.7 or later.
+Visual Studio Tools for Unreal Engine is available for free and supports Visual Studio 2022 Version 17.7 or later.
We recommend [downloading and using the latest version of Visual Studio.](https://visualstudio.microsoft.com/downloads/?cid=learn-onpage-download-cta)
@@ -45,5 +42,8 @@ Unreal Engine version 4.27 and 5.0 or later.
[Install Visual Studio Tools For Unreal Engine](vs-tools-unreal-install.md)\
[Quickstart: Visual Studio Tools for Unreal Engine](vs-tools-unreal-quickstart.md)\
+[Add Unreal Engine classes, modules, and plugins in Visual Studio](vs-tools-unreal-add-class-module-plugin.md)\
+[View Unreal Engine logging in Visual Studio](vs-tools-unreal-logging.md)\
+[View Unreal Engine Blueprints in Visual Studio](vs-tools-unreal-view-blueprints.md)
[Overview of Unreal Engine](https://www.unrealengine.com/en-US/features)\
[Get started with Unreal Engine](https://docs.unrealengine.com/4.27/en-US/Basics/GettingStarted/)
\ No newline at end of file
diff --git a/gamedev/unreal/get-started/vs-tools-unreal-quickstart.md b/gamedev/unreal/get-started/vs-tools-unreal-quickstart.md
index 6ad2b879b0f..713ff9d7b17 100644
--- a/gamedev/unreal/get-started/vs-tools-unreal-quickstart.md
+++ b/gamedev/unreal/get-started/vs-tools-unreal-quickstart.md
@@ -1,7 +1,7 @@
---
title: "Quickstart: Visual Studio Tools for Unreal Engine"
-description: Read an overview about Visual Studio Tools for Unreal Engine, which is a free Visual Studio extension that helps you develop games with Unreal Engine.
-ms.date: 10/19/2023
+description: "Learn about Visual Studio Tools for Unreal Engine, a free Visual Studio extension that helps you develop games with Unreal Engine"
+ms.date: 07/22/2024
ms.topic: quickstart
ms.service: visual-studio
ms.subservice: unreal-engine-tools
@@ -12,26 +12,26 @@ manager: MarkL
# Quickstart: Visual Studio Tools for Unreal Engine
-In this article, download an Unreal Engine (UE) game sample and use Visual Studio Tools for Unreal Engine to:
-- [View UE Blueprints in Visual Studio](#view-ue-blueprints-in-visual-studio)
-- [View UE logging in Visual Studio](#view-ue-logging-within-visual-studio)
-- [View UE macros in Visual Studio](#view-ue-macros-in-visual-studio)
+In this article, download an Unreal Engine (UE) game sample and configure Visual Studio Tools for Unreal Engine. Visual Studio Tools for Unreal Engine is a free Visual Studio extension that helps you develop games with Unreal Engine. It provides a set of features that improve the Unreal Engine development experience in Visual Studio.
## Prerequisites
The following must be installed:
-- Visual Studio version 17.7 or later
-- Unreal Engine version 5 or later because the example used in this quickstart requires UE5 or later.
+- Visual Studio version 17.10 or later.
+- Unreal Engine version 5 or later because the example used in this article requires Unreal Engine 5 or later.
- Visual Studio Tools for Unreal Engine. See [Install Visual Studio Tools for Unreal Engine](vs-tools-unreal-install.md) for installation instructions.
## Download and build the Lyra game sample in Visual Studio
-Lyra is a sample 3D game project for learning about the frameworks in Unreal Engine. See the **Downloading the Lyra Starter Game** section at [Lyra Sample Game](https://docs.unrealengine.com/5.0/lyra-sample-game-in-unreal-engine/) for download instructions.
+Lyra is a sample game project for learning about Unreal Engine. See the **Downloading the Lyra Starter Game** section at [Lyra Sample Game](https://docs.unrealengine.com/5.0/lyra-sample-game-in-unreal-engine/) for download instructions.
## Configure the Lyra game sample to use Visual Studio Tools for Unreal Engine
-Once you have downloaded the game sample, update `LyraStarterGame.uproject` to use the Visual Studio Tools plugin. You could also do this in the Unreal Editor from the main menu under **Edit** > **Plugins** and then find the Visual Studio Integration plugin and check the box next to it. But we'll do it by following these steps:
+After you download the game sample, update `LyraStarterGame.uproject` to use the Visual Studio Tools plugin. You could also do this in the Unreal Editor after loading the Lyra project from the main menu under **Edit** > **Plugins** and then find the *Visual Studio Integration Tools* plugin and check the box next to it.
+
+As of Visual Studio 2022 version 17.7, the Visual Studio Tools for Unreal Engine plugin is included with the Unreal Engine installation. It's no longer required to view Unreal Engine Blueprints. If you have an earlier version of Visual Studio, follow these instructions to install the plugin manually. See [Install Visual Studio Tools for Unreal Engine](vs-tools-unreal-install.md) for installation instructions.
+
1. Open the `LyraStarterGame.uproject` file in a text editor. It's in the directory where you installed the game sample.
1. Add the following to the end of the `Plugins` section:
@@ -43,66 +43,31 @@ Once you have downloaded the game sample, update `LyraStarterGame.uproject` to u
```
1. Open the Lyra project in Unreal Engine.
-1. From the Unreal Engine editor main menu, choose **Tools** > **Refresh Visual Studio Project**. This creates/refreshes the solution file for Visual Studio.
-1. From the Unreal Engine editor main menu, choose **Tools** > **Open Visual Studio**. This opens the game in Visual Studio. If you have multiple versions of Visual Studio on your machine, ensure that the right version opened: from the Visual Studio main menu, choose **Help** > **About Microsoft Visual Studio**. You need to use Visual Studio 2022 version 17.7 or higher. If the right version didn't open, manually open `LyraStarterGame.sln` in the correct version of Visual Studio.
-1. From the Visual Studio main menu, choose **Build** > **Build Solution** to build the game.
+1. From the Unreal Engine editor main menu, choose **Tools** > **Generate Visual Studio Project**. This creates the solution file for Visual Studio.
+1. From the Unreal Engine editor main menu, choose **Tools** > **Open Visual Studio** to open the game in Visual Studio. If you have multiple versions of Visual Studio on your machine, ensure that the right version opened: from the Visual Studio main menu, choose **Help** > **About Microsoft Visual Studio**. You need to use Visual Studio 2022 version 17.7 or higher. If the right version didn't open, manually open `LyraStarterGame.sln` in the correct version of Visual Studio.
1. Change the **Solutions Configurations** dropdown to **Development Editor**. This enables the Blueprints Visual Studio Tools for Unreal Engine:
:::image type="content" source="../media/unreal-engine-configuration-dropdown.png" alt-text="Screenshot of Visual Studio with the Solutions Configurations dropdown expanded and Development Editor selected.":::
+1. From the Visual Studio main menu, choose **Build** > **Build Solution** to build the game.
-## View UE Blueprints in Visual Studio
-
-You can view, but not edit, UE Blueprints from within Visual Studio. This is useful because you can see UE Blueprints without having to switch between the Unreal Editor and Visual Studio. To try it out, follow these steps:
-
-1. In Visual Studio, open `LyraCharacter.h`. Either search for that file in the Search pane of the **Solution Explorer** or find it under **Games** > **LyraStarterGame** > **Source** > **LyraGame** > **Character** > **LyraCharacter.h**
-1. In `LyraCharacter.h`, go to line 96. You should see the following class: `class LYRAGAME_API ALyraCharacter : public AModularCharacter ...`
-1. There are four Blueprint classes that extend this class. You should see a link just above the `ALyraCharacter` class definition that says: `4 derived Blueprint classes`. Click that link to view the four Blueprint classes that extend this class:
- :::image type="content" source="../media/vs-blueprints-link.png" alt-text="Screenshot of the blueprints link above the Alyra Character class. It lists related blueprints." lightbox="../media/vs-blueprints-link.png":::
-1. To view the properties of the `Character_Default_C` Blueprint, double-click it to open the Blueprint asset viewer. You can view the various properties of the Blueprint, but you can't change them:
- :::image type="content" source="../media/vs-blueprints-asset-viewer.png" alt-text="Screenshot of the Character_Default_C Blueprint asset viewer. It shows properties such as Actor, Camera, Character, Collision, and so on.":::
-
-## View UE logging within Visual Studio
-
-You can use the Visual Studio Tools for Unreal Engine to view UE logging within Visual Studio. This is useful because you can see UE logging without having to switch between the Unreal Editor and Visual Studio. To try it out, follow these steps:
-
-1. In Visual Studio, open `LyraGameplayAbility_RangedWeapon.cpp`. Either search for that file in the Search pane of the **Solution Explorer** or find it under **Games** > **LyraStarterGame** > **Source** > **LyraGame** > **Weapons** > **LyraGameplayAbility_RangedWeapon.cpp**
-1. In `LyraGameplayAbility_RangedWeapon.cpp`, go to line 477. You should see this function: `void ULyraGameplayAbility_RangedWeapon::OnTargetDataReadyCallback`
-1. Insert the following code at the beginning of the function: `UE_LOG(LogLyra, Log, TEXT("shot fired"));` This creates a log entry, associated with the category `LogLyra`, that logs `shot fired` when this function is called.
-1. Run the sample game in Visual Studio by choosing **Debug** > **Start Debugging**. The Unreal Editor will open with the Lyra game. Give it a few moments to load.
-1. In Visual Studio, open the UE logging window by choosing **View** > **Other Windows** > **Unreal Engine Log** from the Visual Studio main menu.
-1. In the Unreal Editor, choose the Play button on the toolbar (or `Alt+p`) to start the game.
-1. In the Lyra game, use the `w`, `a`, `s`, `d` keys to navigate the player left to the **Elimination** portal. Position the player over the entry portal to load the game.
-1. Once the game is running, click the mouse button to fire. This creates some log entries in the `LogLyra` category. Now `LogLyra` will appear in the Categories filter for the next step.
-1. Reduce log noise by filtering all but the `LogLyra` category events in the UE logging window as follows: choose the **Categories** dropdown. Choose **(Select All)** at the top of the list to clear all of the log sources. Then select **LogLyra**. In the UE logging window, you should see the log message: `shot fired`:
-
- :::image type="content" source="../media/vs-unreal-engine-log.png" alt-text="A screenshot of the Unreal Engine Log window showing 'shot fired' events and the Categories dropdown with LogLyra selected.":::
-
- The events are at the bottom of the log so you might have to scroll down to see them. You could also choose the **Clear** button to clear the log and then fire again to see the log message.
-
-If you find the font color hard to read, you can adjust it under **Tools** > **Options** > **Environment** > **Fonts and Colors**. Change the dropdown **Show settings for:** to **Unreal Engine Log**. In **Display items:** select **Log** and change the **Item foreground** color to something easier to see for you.
-
-Having the UE logging window open while you're debugging is convenient because you don't have to switch to the Unreal Editor to see them.
-
-## View UE macros in Visual Studio
+## Unreal Engine toolbar
-Long UE macros can be difficult to read. Visual Studio Tools for Unreal Engine expands UE macros so that you can read them more easily. You can copy the expanded macro if you want. You can also search for it online or compare it with another macro. To experiment with these features, follow these steps:
+Visual Studio provides a toolbar that improves the Unreal Engine development integration experience in Visual Studio. The toolbar provides quick access to common UE tasks.
-1. In Visual Studio, open `LyraGameplayAbility_RangedWeapon.cpp`. Either search for that file in the Search pane of the **Solution Explorer** or find it under **Games** > **LyraStarterGame** > **Source** > **LyraGame** > **Weapons** > **LyraGameplayAbility_RangedWeapon.cpp**
-1. In `LyraGameplayAbility_RangedWeapon.cpp`, go to line 41. You should see the following macro: `UE_DEFINE_GAMEPLAY_TAG_STATIC(TAG_WeaponFireBlocked, "Ability.Weapon.NoFiring");`
-1. Hover the mouse pointer over `UE_DEFINE_GAMEPLAY_TAG_STATIC` to see the macro definition window:
- :::image type="content" source="../media/vs-unreal-engine-macro-tooltip.png" alt-text="A screenshot in Visual Studio of the UE macro tooltip. There are options at the bottom to copy, expand inline, visualize expansion, and search online." lightbox="../media/vs-unreal-engine-macro-tooltip.png":::
- The options at the bottom copy the macro to the clipboard, expand the macro inline, visualize the macro's expansion, and search online for the macro.
-1. Choose **Expand Inline**, to expand the macro, and all nested macros, in the code window.
- :::image type="content" source="../media/vs-unreal-engine-macro-expanded-inline.png" alt-text="A screenshot of the expanded contents of the UE_DEFINE_GAMEPLAY_TAG_STATIC macro." lightbox="../media/vs-unreal-engine-macro-expanded-inline.png":::
- You can press `Ctrl+z` to undo the expansion.
-1. Choose **Search online** to open your browser. It opens with a search populated to find the macro. In the previous example, this opens the browser to search for `C++ #define UE_DEFINE_GAMEPLAY_TAG_STATIC(TagName, Tag) static FNativeGameplayTag TagName(UE_PLUGIN_NAME, UE_MODULE_NAME, …`
-1. Choose **Visualize the expansion** to open the **Macro Expansion** window. You can expand the nested macros that are part of the larger macro one step at a time. Scroll to the end of the expansion to see the macro expansion arrows in the upper-right corner of the window. Choose the right arrow to expand the next nested macro. Choose the left arrow to collapse the last nested macro that was expanded:
+Activate the Unreal Engine toolbar in Visual Studio from the main menu via **View** > **Toolbars** > **Unreal Engine**. The toolbar looks like:
- :::image type="content" source="../media/vs-unreal-engine-macro-expansion.png" alt-text="A screenshot of the macro expansion window showing the expanded contents of the UE_DEFINE_GAMEPLAY_TAG_STATIC macro.":::
+:::image type="content" source="../media/unreal-engine-toolbar.png" alt-text="A screenshot of the Unreal Engine toolbar in Visual Studio.":::
-For more information about expanding macros in Visual Studio, see [Visualize C/C++ macro expansion](/cpp/ide/visualize-macro-expansion).
+The toolbar buttons, left to right, do the following:
-This quickstart showed how Visual Studio Tools for Unreal Engine makes it easier to understand UE macros, view UE logging, and view UE Blueprints. May your UE development work be more productive and enjoyable!
+- The play icon is a quick attach button that attaches to processes listed in the dropdown to the right. The dropdown lists Unreal Engine related processes, which makes it easier to attach to the Unreal Engine Editor more easily. You can also use this to attach to any processes.
+- Buttons to start and stop the Unreal Engine integration server. The integration server improves the performance of Unreal Engine integration with Visual Studio. It runs as a background process and automatically updates test information as you work on your project. You can turn it off to reclaim machine resources, and start it when you want the integration improvements. The server is started automatically when you open a UE project in Visual Studio.
+- A button to rescan Unreal Engine Blueprint assets. This updates the Visual Studio solution with the latest Blueprint assets from the Unreal Engine project.
+- A button that opens the Unreal Engine log window.
+- A button to open the **Unreal Engine Integration Configuration** window where you can refresh and see the overall configuration status and Visual Studio Integration Tool status, check for Blueprint support, see whether get Unreal Engine naming convention checker status, and so on.
## Next steps
-See [Visual Studio Tools for Unreal Engine](./vs-tools-unreal-overview.md) for an overview of Visual Studio Tools for Unreal Engine features.
+[Add Unreal Engine classes, modules, and plugins in Visual Studio](vs-tools-unreal-add-class-module-plugin.md)\
+[View Unreal Engine Blueprints in Visual Studio](vs-tools-unreal-view-blueprints.md)\
+[View Unreal Engine logging in Visual Studio](vs-tools-unreal-logging.md)\
+[View Unreal Engine macros in Visual Studio](vs-tools-unreal-view-macros.md)
diff --git a/gamedev/unreal/get-started/vs-tools-unreal-view-blueprints.md b/gamedev/unreal/get-started/vs-tools-unreal-view-blueprints.md
new file mode 100644
index 00000000000..981c064fb31
--- /dev/null
+++ b/gamedev/unreal/get-started/vs-tools-unreal-view-blueprints.md
@@ -0,0 +1,44 @@
+---
+title: "View Unreal Engine Blueprints in Visual Studio"
+description: "Learn how to view, but not edit, UE Blueprints from within Visual Studio"
+ms.date: 07/24/2024
+ms.topic: how-to
+ms.service: visual-studio
+ms.subservice: unreal-engine-tools
+author: TylerMSFT
+ms.author: TWhitney
+manager: MarkL
+#customer intent: As a C++ game developer using Unreal Engine and Visual Studio, I want to view Unreal Engine Blueprints in Visual Studio so that I can see them without switching between the Unreal Editor and Visual Studio.
+---
+
+# View Unreal Engine Blueprints in Visual Studio
+
+You can view, though not edit, Unreal Engine (UE) Blueprint references from within Visual Studio. This is useful because you can see UE Blueprints references without having to switch between the Unreal Editor and Visual Studio.
+
+## Prerequisites
+
+Install the following:
+
+- Visual Studio version 17.10 or later.
+- Unreal Engine version 5 or later.
+- Visual Studio Tools for Unreal Engine. See [Install Visual Studio Tools for Unreal Engine](vs-tools-unreal-install.md) for installation instructions.
+- Complete the [Quickstart: Visual Studio Tools for Unreal Engine](vs-tools-unreal-quickstart.md) to download and build the Lyra game and configure it to use Visual Studio Tools for Unreal Engine.
+
+## View Blueprints references
+
+These steps assume that you have the `LyraStarterGame.sln` solution open in Visual Studio:
+
+1. In Visual Studio, open `LyraCharacter.h`. Either search for that file in the Search pane of the **Solution Explorer**, or find it under **Games** > **LyraStarterGame** > **Source** > **LyraGame** > **Character** > **LyraCharacter.h**.
+1. In `LyraCharacter.h`, go to line 96. You should see the following class: `class LYRAGAME_API ALyraCharacter : public AModularCharacter ...`
+1. There are four Blueprint classes that extend this class. You should see a link just above the `ALyraCharacter` class definition that says: `4 derived Blueprint classes`. Click that link to view the four Blueprint classes that extend this class:
+ :::image type="content" source="../media/vs-blueprints-link.png" alt-text="Screenshot of the Blueprints link above the Alyra Character class. It lists related Blueprints." lightbox="../media/vs-blueprints-link.png":::
+1. To view the properties of the `Character_Default_C` Blueprint, double-click it to open the Blueprint asset viewer. You can view the various properties of the Blueprint, but you can't change them:
+ :::image type="content" source="../media/vs-blueprints-asset-viewer.png" alt-text="Screenshot of the Character_Default_C Blueprint asset viewer. It shows properties such as Actor, Camera, Character, Collision, and so on.":::
+
+## Related content
+
+[Visual Studio Tools for Unreal Engine](./vs-tools-unreal-overview.md)\
+[Add Unreal Engine classes, modules, and plugins in Visual Studio](vs-tools-unreal-add-class-module-plugin.md)\
+[View Unreal Engine Blueprints in Visual Studio](vs-tools-unreal-view-blueprints.md)\
+[View Unreal Engine logging in Visual Studio](vs-tools-unreal-logging.md)\
+[View Unreal Engine macros in Visual Studio](vs-tools-unreal-view-macros.md)
\ No newline at end of file
diff --git a/gamedev/unreal/get-started/vs-tools-unreal-view-macros.md b/gamedev/unreal/get-started/vs-tools-unreal-view-macros.md
new file mode 100644
index 00000000000..32251258df5
--- /dev/null
+++ b/gamedev/unreal/get-started/vs-tools-unreal-view-macros.md
@@ -0,0 +1,50 @@
+---
+title: "View Unreal Engine macros in Visual Studio"
+description: "Learn how to expand Unreal Engine macros from within Visual Studio"
+ms.date: 07/24/2024
+ms.topic: how-to
+ms.service: visual-studio
+ms.subservice: unreal-engine-tools
+author: TylerMSFT
+ms.author: TWhitney
+manager: MarkL
+#customer intent: As a C++ game developer using Unreal Engine and Visual Studio, I want to learn how to view Unreal Engine macros in Visual Studio so that I can read them more easily.
+---
+
+# View Unreal Engine macros in Visual Studio
+
+You can use the Visual Studio Tools for Unreal Engine (UE) to view UE logging within Visual Studio. This is useful because you can see UE logging without having to switch between the Unreal Editor and Visual Studio.
+
+## Prerequisites
+
+Install the following:
+
+- Visual Studio version 17.10 or later.
+- Unreal Engine version 5 or later.
+- Visual Studio Tools for Unreal Engine. See [Install Visual Studio Tools for Unreal Engine](vs-tools-unreal-install.md) for installation instructions.
+- Complete the [Quickstart: Visual Studio Tools for Unreal Engine](vs-tools-unreal-quickstart.md) to download and build the Lyra game and configure it to use Visual Studio Tools for Unreal Engine.
+
+## View Unreal Engine macros in Visual Studio
+
+Long UE macros can be difficult to read. Visual Studio Tools for Unreal Engine expands UE macros so that you can read them more easily. You can copy the expanded macro if you want. You can also search for it online or compare it with another macro. To experiment with these features, follow these steps after completing the [Quickstart: Visual Studio Tools for Unreal Engine](vs-tools-unreal-quickstart.md) to download and build the Lyra game.
+
+1. In Visual Studio, open `LyraGameplayAbility_RangedWeapon.cpp`. Either search for that file in the Search pane of the **Solution Explorer** or find it under **Games** > **LyraStarterGame** > **Source** > **LyraGame** > **Weapons** > **LyraGameplayAbility_RangedWeapon.cpp**
+1. In `LyraGameplayAbility_RangedWeapon.cpp`, go to line 41. You should see the following macro: `UE_DEFINE_GAMEPLAY_TAG_STATIC(TAG_WeaponFireBlocked, "Ability.Weapon.NoFiring");`
+1. Hover the mouse pointer over `UE_DEFINE_GAMEPLAY_TAG_STATIC` to see the macro definition window:
+ :::image type="content" source="../media/vs-unreal-engine-macro-tooltip.png" alt-text="A screenshot in Visual Studio of the UE macro tooltip. There are options at the bottom to copy, expand inline, visualize expansion, and search online." lightbox="../media/vs-unreal-engine-macro-tooltip.png":::
+ The options at the bottom copy the macro to the clipboard, expand the macro inline, visualize the macro's expansion, and search online for the macro.
+1. Choose **Expand Inline**, to expand the macro, and all nested macros, in the code window.
+ :::image type="content" source="../media/vs-unreal-engine-macro-expanded-inline.png" alt-text="A screenshot of the expanded contents of the UE_DEFINE_GAMEPLAY_TAG_STATIC macro." lightbox="../media/vs-unreal-engine-macro-expanded-inline.png":::
+ You can press `Ctrl+z` to undo the expansion.
+1. Choose **Search online** to open your browser. It opens with a search populated to find the macro. In the previous example, this opens the browser to search for `C++ #define UE_DEFINE_GAMEPLAY_TAG_STATIC(TagName, Tag) static FNativeGameplayTag TagName(UE_PLUGIN_NAME, UE_MODULE_NAME, …`
+1. Choose **Visualize the expansion** to open the **Macro Expansion** window. You can expand the nested macros that are part of the larger macro one step at a time. Scroll to the end of the expansion to see the macro expansion arrows in the upper-right corner of the window. Choose the right arrow to expand the next nested macro. Choose the left arrow to collapse the last nested macro that was expanded:
+
+ :::image type="content" source="../media/vs-unreal-engine-macro-expansion.png" alt-text="A screenshot of the macro expansion window showing the expanded contents of the UE_DEFINE_GAMEPLAY_TAG_STATIC macro.":::
+
+## Related content
+
+[Visualize C/C++ macro expansion](/cpp/ide/visualize-macro-expansion)\
+[Visual Studio Tools for Unreal Engine](./vs-tools-unreal-overview.md)\
+[Add Unreal Engine classes, modules, and plugins in Visual Studio](vs-tools-unreal-add-class-module-plugin.md)\
+[View Unreal Engine Blueprints in Visual Studio](vs-tools-unreal-view-blueprints.md)\
+[View Unreal Engine logging in Visual Studio](vs-tools-unreal-logging.md)
\ No newline at end of file
diff --git a/gamedev/unreal/media/unreal-engine-toolbar.png b/gamedev/unreal/media/unreal-engine-toolbar.png
new file mode 100644
index 00000000000..196301baab9
Binary files /dev/null and b/gamedev/unreal/media/unreal-engine-toolbar.png differ
diff --git a/gamedev/unreal/media/unreal-workload.png b/gamedev/unreal/media/unreal-workload.png
index 68ca4ed63eb..36a12fc2cef 100644
Binary files a/gamedev/unreal/media/unreal-workload.png and b/gamedev/unreal/media/unreal-workload.png differ
diff --git a/gamedev/unreal/media/vs-add-new-unreal-engine-item-dialog-class.png b/gamedev/unreal/media/vs-add-new-unreal-engine-item-dialog-class.png
new file mode 100644
index 00000000000..1db976ee584
Binary files /dev/null and b/gamedev/unreal/media/vs-add-new-unreal-engine-item-dialog-class.png differ
diff --git a/gamedev/unreal/media/vs-add-new-unreal-engine-item-dialog-module.png b/gamedev/unreal/media/vs-add-new-unreal-engine-item-dialog-module.png
new file mode 100644
index 00000000000..9c2095db65f
Binary files /dev/null and b/gamedev/unreal/media/vs-add-new-unreal-engine-item-dialog-module.png differ
diff --git a/gamedev/unreal/media/vs-add-new-unreal-engine-item-dialog-plugin.png b/gamedev/unreal/media/vs-add-new-unreal-engine-item-dialog-plugin.png
new file mode 100644
index 00000000000..279c8c1188f
Binary files /dev/null and b/gamedev/unreal/media/vs-add-new-unreal-engine-item-dialog-plugin.png differ
diff --git a/gamedev/unreal/media/vs-add-unreal-engine-class-dialog.png b/gamedev/unreal/media/vs-add-unreal-engine-class-dialog.png
new file mode 100644
index 00000000000..50f412313c5
Binary files /dev/null and b/gamedev/unreal/media/vs-add-unreal-engine-class-dialog.png differ
diff --git a/gamedev/unreal/media/vs-add-unreal-engine-module-dialog.png b/gamedev/unreal/media/vs-add-unreal-engine-module-dialog.png
new file mode 100644
index 00000000000..d50f8cb3afb
Binary files /dev/null and b/gamedev/unreal/media/vs-add-unreal-engine-module-dialog.png differ
diff --git a/gamedev/unreal/media/vs-add-unreal-engine-plugin-dialog.png b/gamedev/unreal/media/vs-add-unreal-engine-plugin-dialog.png
new file mode 100644
index 00000000000..ff5c76b5d60
Binary files /dev/null and b/gamedev/unreal/media/vs-add-unreal-engine-plugin-dialog.png differ