Whole Tomato Software Forums
Whole Tomato Software Forums
Main Site | Profile | Register | Active Topics | Members | Search | FAQ
 All Forums
 Visual Assist
 Technical Support
 C/C++ Directories and Unreal Engine 5

You must be registered to post a reply.
Click here to register.

Screensize:
UserName:
Password:
Format: BoldItalicizeUnderlineStrikethrough Align leftCenterAlign right Insert horizontal ruleUpload and insert imageInsert hyperlinkInsert email addressInsert codeInsert quoted textInsert listInsert Emoji
   
Message:

Forum code is on.
Html is off.

 
Check to subscribe to this topic.
   

T O P I C    R E V I E W
CeH9 Posted - May 12 2022 : 6:01:53 PM
Hi, I've read some topics about problems with recogintioin UE sources located on different from "system" drive (C:) which is my case.
Currently IDE parses(database symbols) UE sources only once, but for every solution even if they use same version of ureal engine (is it expected behavior?). UE Downloaded from epic's launcher. Also I don't see Unreal classes in italics. At the same time I have some of the UE5 subfolders listed in C/C++ list, but I'm not sure that this list is comprehensive.


License: trial
VA_X64.dll file version 10.9.2451.0 built 2022.04.30
DevEnv.exe version 17.1.32421.90 Community
msenv.dll version 17.0.32419.317
Comctl32.dll version 6.10.19041.1110
Windows 10 10.0 2009 Build 19043.1110 
6 processors (x86-64)
Language info: 1252, 0x409

Platform: Project defined
Stable Includes:
C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\cppwinrt;
C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\winrt;
C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\shared;
C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um;
C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\ucrt;
C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\VS\include;
C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.31.31103\atlmfc\include;
C:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\winrt;
C:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\um;
C:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\shared;
C:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\ucrt;
C:\Program Files (x86)\Windows Kits\NETFXSDK\4.8\include\um;
C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.31.31103\INCLUDE;
B:\Games\UE_5.0\Engine\Source\Programs\UnrealLightmass\Public;
G:\Unreal5Projects\Lesson2Practice2\Intermediate\Build\Win64\UnrealEditor\Inc\Lesson2Practice2;

Other Includes:

Stable Source Directories:
B:\Games\UE_5.0\Engine\Source\ThirdParty\HWCPipe\include\vendor\arm\pmu;
B:\Games\UE_5.0\Engine\Source\ThirdParty\HWCPipe\include\vendor\arm\mali;
B:\Games\UE_5.0\Engine\Source\ThirdParty\GoogleGameSDK\gamesdk\src\swappy\vulkan;
B:\Games\UE_5.0\Engine\Source\ThirdParty\GoogleGameSDK\gamesdk\src\swappy\opengl;
B:\Games\UE_5.0\Engine\Source\ThirdParty\GoogleGameSDK\gamesdk\src\swappy\common;
B:\Games\UE_5.0\Engine\Source\ThirdParty\GoogleGameSDK\gamesdk\src\device_info\jni;
B:\Games\UE_5.0\Engine\Source\ThirdParty\GoogleGameSDK\gamesdk\src\device_info\core;
B:\Games\UE_5.0\Engine\Source\ThirdParty\Android\libunwind\libunwind\android\tests;
B:\Games\UE_5.0\Engine\Source\Runtime\BinkAudioDecoder\SDK\BinkAudio\Src;
B:\Games\UE_5.0\Engine\Source\ThirdParty\mtlpp\mtlpp-master-7efad47\examples;
B:\Games\UE_5.0\Engine\Source\ThirdParty\libSampleRate\Private;
B:\Games\UE_5.0\Engine\Source\ThirdParty\HWCPipe\include;
B:\Games\UE_5.0\Engine\Source\Runtime\Toolbox\Private;
B:\Games\UE_5.0\Engine\Source\Programs\Shared\EpicGames.Perforce.Native;
B:\Games\UE_5.0\Engine\Source\Developer\XGEController\Private;















10   L A T E S T    R E P L I E S    (Newest First)
feline Posted - May 13 2022 : 1:18:41 PM
Thank you for the update, that makes sense, since VA will need to be able to find the bold and italic versions of the font to use them.

Hopefully this will work reliably now for you. I am seeing a problem with italic with all 32 font files installed in VS2022, but only in VS2022. I have the same font selected here, so hopefully this odd problem I am seeing is just down to some oddity with my test system. I have put a bug report in, just in case:

case=148141
CeH9 Posted - May 13 2022 : 12:22:31 PM
I've installed all 32 , but using font without any postfixes.







feline Posted - May 13 2022 : 12:11:14 PM
Which font, exactly, are you using? If you installed all 32 items in the "fonts\ttf\" folder from the zip file then there are several different fonts listed in the IDE options dialog.

I am seeing some mixed results with this font / fonts, so want to make sure I test the same font you used.
CeH9 Posted - May 13 2022 : 11:50:57 AM
Installing missing variations (italic, bold) of custom font into system (Windows) solves the problem.




CeH9 Posted - May 13 2022 : 11:38:07 AM
P.S. I'm using https://www.jetbrains.com/lp/mono/
CeH9 Posted - May 13 2022 : 11:35:11 AM
Haha, you are right, it's all about custom font, with default one all works fine.
feline Posted - May 13 2022 : 11:12:13 AM
That is really strange, the include directory list being very long is the expected behaviour, so that part is working correctly.

FVector is showing in italics correctly for me, using VS2022 and VA 2451.0.

To double check things, can you please open VA's Find Symbol dialog, Alt-Shift-S, and look at the two numbers on the title bar. The first is the number of symbols matching the current search filter and the second is the total number of symbols being shown.

If you turn On or Off the checkbox "Show only symbols defined in current solution" at the bottom of the dialog the total number of symbols being shown should change radically, for me it is changing by 1,600,000 when all of the UE 5 symbols are filtered out. This is checking that VA is correctly classifying the UE symbols as stable symbols that should then be shown in italics for you.

If this works correctly then can you please try creating a new, default C++ console solution, so nothing at all to do with Unreal Engine, and see if "std::string" is shown in italics in the solution?

I am trying to find out if there is a problem with displaying italics on your system. You do seem to be using a different font for the editor to me, so its possible that is stopping italic from working correctly.

As for the environment variable, once the limitation in VA is fixed the install location of UE won't matter.
CeH9 Posted - May 13 2022 : 09:27:29 AM
It would be nice to have an option to spicify path to UE location via Environment variables.
CeH9 Posted - May 13 2022 : 09:15:51 AM
I applied your solution, database Symbols seems to be fixed, no more extra parsing, only ~1 min updating (instead of 20-25 min full parsing).

Italics still doesn't work, even more bold for local symbols doesn't work too.






License: trial
VA_X64.dll file version 10.9.2451.0 built 2022.04.30
DevEnv.exe version 17.1.32421.90 Community
msenv.dll version 17.0.32419.317
Comctl32.dll version 6.10.19041.1110
Windows 10 10.0 2009 Build 19043.1110 
6 processors (x86-64)
Language info: 1252, 0x409

Platform: Project defined
Stable Includes:
C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\cppwinrt;
C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\winrt;
C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\shared;
C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um;
C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\ucrt;
C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\VS\include;
C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.31.31103\atlmfc\include;
C:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\winrt;
C:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\um;
C:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\shared;
C:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\ucrt;
C:\Program Files (x86)\Windows Kits\NETFXSDK\4.8\include\um;
C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.31.31103\INCLUDE;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Editor\SkeletalMeshEditor\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Developer\MeshReductionInterface\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Developer\HierarchicalLODUtilities\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Developer\MeshMergeUtilities\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Developer\MeshUtilities\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Editor\AddContentDialog\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Editor\AssetTagsEditor\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Runtime\Windows;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Developer\ToolWidgets\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Developer\PhysicsUtilities\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Editor\Kismet\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Editor\Kismet\Classes;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Editor\SubobjectEditor\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Editor\SubobjectDataInterface\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Developer\DeveloperToolSettings\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Developer\DeveloperToolSettings\Classes;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Runtime\Experimental\Interchange\Engine\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Runtime\Experimental\Interchange\Core\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Runtime\Experimental\Interchange;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Editor\StatusBar\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Developer\ToolMenus\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Editor\ToolMenusEditor\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Developer\MeshBuilder\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Runtime\Experimental\ChaosSolverEngine\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Runtime\Experimental\FieldSystem\Source\FieldSystemEngine\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Runtime\Experimental\FieldSystem\Source;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Runtime\MaterialShaderQualitySettings\Classes;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Runtime\Experimental\GeometryCollectionEngine\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Runtime\NavigationSystem\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Runtime\PropertyPath\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Runtime\MovieSceneTracks\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Runtime\TimeManagement\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Runtime\MovieScene\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Runtime\UMG\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Runtime\NetworkFileSystem\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Developer\CollectionManager\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Editor\ContentBrowserData\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Editor\ContentBrowser\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Editor\StructViewer\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Editor\GraphEditor\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Editor\ClassViewer\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Editor\DetailCustomizations\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Editor\EditorConfig\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Editor\SceneDepthPickerMode\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Editor\ActorPickerMode\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Editor\PropertyEditor\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Runtime\Landscape\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Runtime\Landscape\Classes;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Editor\CommonMenuExtensions\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Editor\VREditor\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Editor\VREditor;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Runtime\HeadMountedDisplay\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Editor\IntroTutorials\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Developer\Settings\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Editor\LevelEditor\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Developer\TextureFormat\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Developer\TargetPlatform\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Runtime\AudioLink\AudioLinkEngine\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Runtime\AudioMixer\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Runtime\AudioMixer\Classes;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Editor\AudioEditor\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Editor\AudioEditor\Classes;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Developer\Localization\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Runtime\AutomationTest\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Developer\AutomationController\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Developer\FunctionalTesting\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Developer\FunctionalTesting\Classes;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Runtime\Online\HTTP\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Runtime\Online;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Editor\BlueprintGraph\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Editor\BlueprintGraph\Classes;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Developer\GameplayDebugger\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Editor\UnrealEdMessages\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Editor\UnrealEdMessages\Classes;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Developer\UncontrolledChangelists\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Developer\SourceControl\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Editor\EditorStyle\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Runtime\TypedElementRuntime\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Runtime\TypedElementFramework\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Runtime\InteractiveToolsFramework\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Editor\EditorSubsystem\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Editor\EditorFramework\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Runtime\SandboxFile\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Runtime\Projects\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Editor\Documentation\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Developer\DirectoryWatcher\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Developer;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Editor\UnrealEd\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Editor\UnrealEd\Classes;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Programs\UnrealLightmass\Public;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Editor;
C:\Program Files\Epic Games\UE_5.0\Engine\Source\Runtime\AudioLink\AudioLinkCore\Public;
...

A lot of stuff
feline Posted - May 13 2022 : 05:42:37 AM
There is a known limitation in VA, that it won�t correctly pick up the Unreal Engine directory tree if it installed outside of "C:\Program Files\"

case=105950

to work around this problem can you please create a junction point link to point at the installed engine. So:

Create the directory "C:\Program Files\Epic Games\"

Open a command prompt inside this directory, running as administrator, and run the command:

mklink /J UE_5.0 "B:\Games\UE_5.0"

Where the second path is the directory where you have installed / placed Unreal Engine. This will create a directory link inside the Windows file system, so while Unreal Engine will appear to exist inside this Program Files sub-directory, is still where it was originally installed.

Now to update your project to use the new path, open the Unreal Engine editor via this junction point, so run:

C:\Program Files\Epic Games\UE_5.0EA\Engine\Binaries\Win64\UnrealEditor.exe

and open your project. In Unreal Engine 5 use:

Tools menu -> Refresh Visual Studio Project

this will update the project to use the "C:\Program Files\" path of the junction point for the location of Unreal Engine, which is what Visual Assist is expecting.

This should fix both lack of italic, assuming you have turned on showing system symbols in italics, and also the extra parsing that is happening, since VA isn't currently treating UE as a stable library that doesn't need to be reparsed all the time.

© 2023 Whole Tomato Software, LLC Go To Top Of Page
Snitz Forums 2000