Setting up Visual Studio for Unreal Engine
If you're new to using Visual Studio with Unreal Engine, you want to read this extended version of the official guide.
- Setting Up Visual Studio for Unreal Engine - installation and basic setup
- UnrealVS Extension - it's a useful extension made by Epic, lets you easily add launch parameters and build many configurations at once
- Coding Standard - it's important to respect engine's coding standard. Follow it while writing your own code, it makes it easier for others to read your code and vice versa.
This built-in feature of Visual Studio doesn't work properly with C++, especially huge codebases. Many programmers working with Unreal simply disable it. It's common to use one of the plugins mentioned in section below.
At least, change this setting in the Error List window to filter out all of these false Intellisense errors. Otherwise, you'd get flooded with thousands of false errors.
Boost productivity with the single VS plug-in
Programmers working with UE4 usually boost productivity by using one of the essential plugins: Visual Assist (VAX) or Resharper C++ (R++).
Why this is important?
- Clean Visual Studio text editor doesn't provide effective tools to work with C++ code: finding symbols, refactoring code, real-time code inspection. And there's no support for "Unreal C++" things.
- Unreal Engine 4 codebase contains a few millions of lines of code. It's too much for clean Visual Studio to handle such enormous codebase. Searching for files or symbols usages can take a bit of time.
You can choose one of these two described below. Both are paid, but definitely worth it. Both come with 30-day free trials.
Know also as VAX or "tomato". It is the essential extension for C++ programmers for a decate, at least. Not only for Unreal Engine programmers but also for devs working on in-house engines.
This is a pretty new plugin, developed by JetBrains company. Known for their excellent C# tools and continuous integration called TeamCity. A lot of programmers now choose R++ over VAX. It provides even better refactoring options and source code navigation. Also, code inspection works really well. Some programmers even commented: "finally C++ tools got as good as C# ones".
They're working hard on supporting C++. Recent versions of Resharper C++ add more and more features exclusive for Unreal Engine. You'll find this plugin at JetBrains.com.
- Working with UE4 Projects
- Coding Assistance in C++ - take a closer look at dot/arrow completion helpers. This works a way better with UE4's smart pointers than good old VAX, by converting dot to arrow after you choose what should follow it.
- Default Keymap
UE4 Macro Indenting
Visual Studio formatting doesn't handle properly indenting the next line after UE4 macros like UPROPERTY(). The next line is auto indented, decreasing readability.
- VAX handles it since 2020.02.20 version!
- Also supported by Resharper C++!
- UE4 Smarter Macro Indenting - An older extension used previously
Install Perforce plug-in
If using Perforce for your project, you need P4VS plug-in which handles Perforce-related operations from the Visual Studio. Just install through the built-in extension manager.