General Release Build 2022.4 (2463)

Requires maintenance through 2022.10.25

Download release
NEW Added support for C++17's structured binding declarations.
NEW Added coloring support for several HLSL types.
NEW Added a checkbox to honor excluded items settings defined in ".vscode\settings.json" when opening a folder.
NEW Added Code Inspection for bugprone-string-integer-assignment clang checker.

This release is centered around improvements to Visual Assist’s parser. The parser has been updated to recognize more modern C++ code. New features are introduced into C++ roughly once every three years and this change will keep Visual Assist on pace with the ever changing industry standards.

Visual Assist

VA now recognizes structured bindings introduced in C++17.

We’ve also added an option to honor VSCode settings when initializing projects. This comes at the request of some of our users who wished to keep parsing focused on relevant code, particularly when working in very large Cmake projects.

Apart from those, work on HLSL support from the last update has been continued, as well as a new code inspection check.

If you want to learn more about the changes in this release, head on over to the announcement blog post.

Bug Fixes

  • Fixed an issue where parser could become confused when using std::get and std::tuple.
  • Fixed an issue in C# where the parser did not understand parameter declared with "out int".
  • Fixed an issue where comments could be duplicated in tooltips.
  • Fixed an issue where VA's tooltips would not appear if IntelliSense was disabled.
  • Fixed an issue where the parser could become confused with case'1' inside a switch statement.
  • Fixed an issue where the VA Outline tooltip spread across two monitors with different DPI settings could cause hang.
  • Fixed an issue where the tomato icon may become black on hover in VS 2022.
  • Fixed an issue where a class method name that begins with "using" is missing from MIF.

Keep the reports coming. Send us a message or start a thread on the user forums for bug reports or suggestions.

General Release Build 2022.3 (2458)

Requires maintenance through 2022.07.29

Download release
NEW HLSL shader files are now supported. This feature is in beta in this release. (USH and USF in Unreal)
NEW Added Code Inspection for cppcoreguidelines-pro-type-member-init clang checker
NEW Added Code Inspection for readability-string-compare clang checker
NEW Allow forward slashes (Linux style) to be used in Open File in Solution directory filters

The pièce de résistance of this release is the introduction of support for HLSL shader files. While in beta, you can now use common Visual Assist features for HLSL projects.

Visual Assist

Shader file functions are disabled by default. To enable it, go to Visual Assist Options -> Game Development -> Enable support for shader files.

Visual Assist’s library of code inspections also gets two new checkers. The first check involves flagging construction definitions with incomplete initialized fields. While the second checks for a common mistake when using the compare method, a sort function, to compare strings.

This release also adds Linux-style shorthand to Open File in Solution which adds a filter for files contained in a certain directory. For example, "\TestContent" filters all files not contained in a directory starting with "TestContent". "/TestContent" to be a directory filter now too.

Bug Fixes

  • Fix for Unreal Engine core redirect being offered on types with no markup
  • The Unreal Engine core redirect checkbox in dialogs will always be unchecked on dialog open, instead of remembering last state
  • Fix for issue where Modify Expression would be inconsistently offered in whitespace
  • Fix for issue that could cause some icons to not load
  • Fix for incorrect OS version reported in Windows 11
  • Fix for poor contrast in Create File dialog edit control
  • Fix for issue where Insert Path dialog radio button text would sometimes be cut off

Keep the reports coming. Send us a message or start a thread on the user forums for bug reports or suggestions.

General Release Build 2022.2 (2451)

Requires maintenance through 2022.04.30

Download release
NEW Unreal Engine 5 now officially supported
NEW Unreal Engine Core Redirect -aware renaming of classes, structs and more
NEW Sort Selected Lines, Spell Check and Insert Path now function in more file types by default
NEW Added Code Inspection for performance-noexcept-move-constructor clang checker
NEW Added Code Inspection for performance-move-const-arg clang checker
NEW High DPI icons matching the new VS 2022 style

VA 2022.2 is here with new features and updates!

Firstly, our game developer users will be glad to hear that Visual Assist now officially supports Unreal Engine 5. We’ve also added a really useful productivity feature: renaming assets now supports Core Redirect. This is an Unreal feature that tracks old and new names to keep code and Blueprints that refer to the old name functioning, and now Visual Assist will add this data when renaming. This will allow you to rename more freely (an important part of code maintenance or code changes) without worrying about your game malfunctioning due to a missing redirect or needing to manually add the redirects.

Visual Assist

And for those working in Visual Studio 2022, we’ve also spruced up VA’s icons with higher DPI to scale better and fit the IDE’s style changes.

Next up, a number of VA’s coding assistance features will now be turned on by default for more file types. This makes it easier to recognize places where the feature can be used. For example, sort selected lines and spell check now automatically work for plain text files.

Lastly, some code inspection improvements. The first checks for an easy-to-make mistake where std::move does nothing, where it should speed up copying of a type. The second check validates user defined move constructors to ensure they are properly marked noexcept, which would prevent them from being used.

Bug Fixes

  • Fix for Ctrl + Backspace entering a character into VA View search boxes
  • Fix for Inline Snippets to prevent surrounding the input placeholder when typing characters such as "("
  • Fix for our exe installer to prevent a possible failed install loop
  • Fix for Introduce Variable being offered in whitespace of comment blocks
  • Fix for incorrect scope deduction with "using x" and inline namespaces

Plenty of thanks to everyone who submitted bug reports. It helps us keep track of fixes to include in each update. Reminder: if you have any comments, suggestions, or encounter any errors, please send us a message or start a thread on our user forums.