[UE5.1.1 + VS 2022] UE Integration Logging: Logs modules while not running the engine??

After reinstalling VS 2022 I see there is new functionality for UE by default, + it suggests an additional new plugin for UE “Visual Studio Integration Tool”.
I now have a new output category on my VS Logging “UE Integration Logging” prints strings present in the code of my modules when I start up VS. Why does this happen when the engine is not at all running? Also Is the UE plugin ( integration tool) any good? It barely has reviews and I wish not to corrupt my Blueprints tonight :slight_smile: .

Visual Studio Integration Tool in Code Plugins - UE Marketplace

the logging behavior below runs on VS startup regardless of having that plugin.

Analyzing Blueprints for project: XXX:\XXX\XXX.uproject... 
"K:\Unreal Engine\UE_5.1\Engine\Binaries\Win64\UnrealEditor-Cmd.exe" "XXX:\XXX\XXX.uproject" -run=VisualStudioTools -unattended -noshadercompile -nosound -nullrhi -nocpuprofilertrace -nocrashreports -nosplash -ddc=noshared -output="C:\XXXXX"
[2023.04.09-22.55.06:925][  0]LogTextureFormatManager: Display: Loaded Base TextureFormat: TextureFormatASTC
[2023.04.09-22.55.06:925][  0]LogTextureFormatManager: Display: Loaded Base TextureFormat: TextureFormatDXT
[2023.04.09-22.55.06:925][  0]LogTextureFormatManager: Display: Loaded Base TextureFormat: TextureFormatETC2
[2023.04.09-22.55.06:925][  0]LogTextureFormatManager: Display: Loaded Base TextureFormat: TextureFormatIntelISPCTexComp
[2023.04.09-22.55.06:925][  0]LogTextureFormatManager: Display: Loaded Base TextureFormat: TextureFormatUncompressed
[2023.04.09-22.55.06:925][  0]LogTextureFormatOodle: Display: Oodle Texture TFO init; latest sdk version = 2.9.8
[2023.04.09-22.55.06:925][  0]LogTextureFormatOodle: Display: Oodle Texture loading DLL: oo2tex_win64_2.9.5.dll
[2023.04.09-22.55.06:926][  0]LogTextureFormatOodle: Display: Oodle Texture loading DLL: oo2tex_win64_2.9.6.dll
[2023.04.09-22.55.06:927][  0]LogTextureFormatOodle: Display: Oodle Texture loading DLL: oo2tex_win64_2.9.7.dll
[2023.04.09-22.55.06:928][  0]LogTextureFormatOodle: Display: Oodle Texture loading DLL: oo2tex_win64_2.9.8.dll
[2023.04.09-22.55.06:929][  0]LogTextureFormatManager: Display: Loaded Base TextureFormat: TextureFormatOodle
[2023.04.09-22.55.06:937][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'Android'
[2023.04.09-22.55.06:937][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'Android_ASTC'
[2023.04.09-22.55.06:937][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'Android_DXT'
[2023.04.09-22.55.06:937][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'Android_ETC2'
[2023.04.09-22.55.06:937][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'AndroidClient'
[2023.04.09-22.55.06:937][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'Android_ASTCClient'
[2023.04.09-22.55.06:937][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'Android_DXTClient'
[2023.04.09-22.55.06:937][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'Android_ETC2Client'
[2023.04.09-22.55.06:937][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'Android_Multi'
[2023.04.09-22.55.06:937][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'Android_MultiClient'
[2023.04.09-22.55.06:941][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'HoloLens'
[2023.04.09-22.55.06:941][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'HoloLensClient'
[2023.04.09-22.55.06:954][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'IOS'
[2023.04.09-22.55.06:954][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'IOSClient'
[2023.04.09-22.55.06:959][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'Linux'
[2023.04.09-22.55.06:959][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'LinuxEditor'
[2023.04.09-22.55.06:959][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'LinuxServer'
[2023.04.09-22.55.06:959][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'LinuxClient'
[2023.04.09-22.55.06:963][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'LinuxArm64'
[2023.04.09-22.55.06:963][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'LinuxArm64Server'
[2023.04.09-22.55.06:963][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'LinuxArm64Client'
[2023.04.09-22.55.06:967][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'TVOS'
[2023.04.09-22.55.06:967][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'TVOSClient'
[2023.04.09-22.55.06:975][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'Windows'
[2023.04.09-22.55.06:975][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'WindowsEditor'
[2023.04.09-22.55.06:975][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'WindowsServer'
[2023.04.09-22.55.06:975][  0]LogTargetPlatformManager: Display: Loaded TargetPlatform 'WindowsClient'
[2023.04.09-22.55.06:975][  0]LogTargetPlatformManager: Display: Building Assets For WindowsEditor
[2023.04.09-22.55.06:988][  0]LogAudioDebug: Display: Lib vorbis DLL was dynamically loaded.
[2023.04.09-22.55.07:105][  0]LogDerivedDataCache: Display: Performance to ../../../Engine/DerivedDataCache: Latency=0.01ms. RandomReadSpeed=685.81MBs, RandomWriteSpeed=19.23MBs. Assigned SpeedClass 'Local'
[2023.04.09-22.55.07:106][  0]LogVirtualization: Display: VirtualizationSystem name found in ini file: None
[2023.04.09-22.55.07:106][  0]LogVirtualization: Display: FNullVirtualizationSystem mounted, virtualization will be disabled
[2023.04.09-22.55.07:108][  0]LogShaderCompilers: Display: Compiling shader autogen file: ../../../../../Unreal Projects/XXX/Intermediate/ShaderAutogen/PCD3D_SM5/AutogenShaderHeaders.ush
[2023.04.09-22.55.07:108][  0]LogShaderCompilers: Display: Autogen file is unchanged, skipping write.
[2023.04.09-22.55.07:132][  0]LogEditorDomain: Display: EditorDomain is Disabled
[2023.04.09-22.55.07:909][  0]LogCsvProfiler: Display: Metadata set : deviceprofile="WindowsEditor"
[2023.04.09-22.55.07:909][  0]LogShaderCompilers: Display: Compiling shader autogen file: ../../../../../Unreal Projects/XXX/Intermediate/ShaderAutogen/PCD3D_ES3_1/AutogenShaderHeaders.ush
[2023.04.09-22.55.07:909][  0]LogShaderCompilers: Display: Autogen file is unchanged, skipping write.
[2023.04.09-22.55.10:236][  0]LogAudio: Display: Registering Engine Module Parameter Interfaces...
[2023.04.09-22.55.10:550][  0]LogMyPlugin: Error: FSomeClass::Install (30): Slate is not initialized.
[2023.04.09-22.55.10:550][  0]LogMyPlugin: Error: FXXXModule::StartupModule (22): SlateApplication is not initialized.
[2023.04.09-22.55.14:702][  0]LogAudioCaptureCore: Display: No Audio Capture implementations found. Audio input will be silent.
[2023.04.09-22.55.14:702][  0]LogAudioCaptureCore: Display: No Audio Capture implementations found. Audio input will be silent.
[2023.04.09-22.55.15:011][  0]LogInit: Error: VisualStudioToolsCommandlet looked like a commandlet, but we could not find the class.
[2023.04.09-22.55.15:204][  0]LogMyPlugin: Error: FXXXModule::ShutdownModule (34): SlateApplication is not initialized.
6 Likes

Similarly, the “Unreal Engine Integration Logging” windows under “Output” steals focus from the “Build” output, which is highly annoying (each time after a build, looking at the log it switches to the Integration Logging and you need to switch back).

It’s not the “Log Tool Window” which can be disabled under Tools/Options/Unreal Engine/General…

Any idea if “Unreal Engine Integration Logging” can be disabled entirely, anyone?

6 Likes

As far as I remember the panel normally containing the build / error / log panels always steals focus after building as well. Highly annoying. Google never gave me an answer on how to change that VS behavior.

2 Likes

Do you mean the error list screen?
If so, you can disable that here:

The Unreal documentation actually suggests doing so (at the very bottom of the page): Setting Up Visual Studio Development Environment for C++ Projects in Unreal Engine | Unreal Engine 5.2 Documentation

1 Like


@kalmiya here is a image of the inconvenient output they are saying.

Oh yes this is driving me crazy! Already tried multiple settings within visual studio but nothing helps… It should be a separated window or it should be possible to not focus that even on new output…

3 Likes

I understand that, and that was what I was asking about too - but in his follow-up post Roy also mentioned the other window being annoying too, and not knowing how to disable it.

Is there a fix for this yet?

Ok, I found it!
Go to Tools->Options and then Search “Unreal” on the search box. Under Unreal Engine you will see the option “Log Tool Window” “Show automatically” set it to FALSE!

7 Likes

I don’t think changing the “Show Log Tool Window - Show Automatically” setting solves it, as I already had it set to false and the “Unreal Engine Integration Logging” window keeps harassing me… it constantly switches focus to itself…

2 Likes

Sorry to hear that. It did the trick for me. I haven’t seen it since.

That’s super annoying. Microsoft at it’s finest.

I also found this annoying. The Unreal Engine setting resolved it for me.

Commenting to add that the UHT running on files that have been modified can temporary prevent normal saving (such as via Ctrl-S) because the file is in use - instead it tries to Save As. As mentioned the settings resolve this.

1 Like

Setting the Log Tool Window to false just prevents the Unreal Engine Log window from showing on start up. It has nothing to do with the Unreal Engine Integration Logging window, which is an output window pane, not a tool window, like the Unreal Engine Log.

So somewhere in the extension is code similar to this. This is just for illustration purposes:

var dte = (EnvDTE.DTE)Package.GetGlobalService(typeof(EnvDTE.DTE));
Window window = dte.Windows.Item(EnvDTE.Constants.vsWindowKindOutput);
OutputWindow outputWindow = (OutputWindow)window.Object;
const var paneName = "Unreal Engine Integration Logging"

try
{
    pane = outputWindow.OutputWindowPanes.Item(paneName);
}
catch
{
    pane = outputWindow.OutputWindowPanes.Add(paneName);
}

pane.Activate();

Solution: Stop calling Activate on the UEIL output pane after builds or convert the Output Window to a Tool Window like the Unreal Engine Log.

I’m having the same issue. It’s extremely annoying to have the integration log constantly stealing focus. This seems like a situation where features are being developed by people who aren’t dogfooding their own tools.

That said, I don’t want to kick anyone too hard, I’ve had my fair share of “oversights” after many years in the field, but this is an exceptionally bad user experience.

I hope it gets fixed before I switch to Rider! :slight_smile:

6 Likes

Same frustrations here.

Also, copious amounts of debug-spam formatted as JSON.

Uninstalled “IDE support for Unreal Engine” and back to blissful development.

image

1 Like

I have written a VS extension and would love to make this change to their plugin because of this annoying issue. Do you or anyone else know where the source code is for this extension? I can’t seem to find it anywhere…

thank you!

I’ve been suffering through that highly annoying “UE Integration Logging” window for the past few weeks and just couldn’t get rid of it. Started having nightmares of that abysmal thing stealing focus every 30 seconds.

THANKS!

1 Like

I have the plugin installed but I Have that Tab, Only UnrealVS!!!


I need to disable the log, the auto focus is annoying

This is probably the project:
Engine\Source\Programs\UnrealVS\UnrealVS.sln

If so, this might be what’s setting the focus:
Engine\Source\Programs\UnrealVS\UnrealVS.Shared\CompileSingleFile.cs, 123:

		bool TryCompileSingleFileOrModule(bool bIsFile, bool bPreProcessOnly)
		{
			ThreadHelper.ThrowIfNotOnUIThread();
			DTE DTE = UnrealVSPackage.Instance.DTE;

			// Activate the output window
			Window Window = DTE.Windows.Item(EnvDTE.Constants.vsWindowKindOutput);
			Window.Activate();

But again, haven’t looked, but that might be a starting point. This might be a different VS Extension altogether.

omg, you’re right, I searched all of the source code for this, but I did it from a UE5.sln, hence this never showed up. Thank you so much for this, I will try and fix this annoying issue ASAP… Extension development is not easy though and I never received an update on this thread from Epic so sorry for missing your message.