UE4 Visual Studio extension - Examine Blueprint property values in watch window

Updated to support 4.12+

Visual Studio extension for displaying the values of blueprint variables in the VS watch windows. When adding a watch on a UObject, an extra entry “BP Properties” will be displayed if the object is of a blueprint class. Expanding this will list the blueprint variables.

Installer download (Dropbox). Just run the VSIX file to install the extension. It will be enabled by default.
Website.
Github.

There are still some issues and I’ll try to fix them in time. Any help welcome - unfortunately documentation and examples for the extension API used for this are essentially non-existent.

NOTES:

  • Requires VS 2015.
  • Most types are supported. Interfaces yet to be added, possibly a few others.
  • Should be used in conjunction with the UE4 natvis file included with the engine (copy from Engine/Extras/VisualStudioDebugging into [User]/Documents/Visual Studio 2015/Visualizers).

That’s a cool Extension.

Thank you.

This is rad, excellent work :smiley:

No worries. In my experience, it’s not that often you need to check on blueprint values when debugging, but when you do, it’s a real pain not to be able to.

If anyone makes use of it and it doesn’t behave as you’d expect, please let me know. I’ve only tested it on the one computer, so there may be some other issues I’m not aware of.

Hi kamrann, thanks for your work!

I tried both your prebuilt version and version I built myself, both crashed my visual studio (community 2015 update 1 with UE4.11) when clicking the “BP Properties” category. No idea if I did something wrong…

Well that’s not ideal! Nah, nothing you could have done wrong. Haven’t installed 4.11 yet myself, though I can’t imagine there are any changes to the structure of the fundamental engine types. This is the first program I’ve ever written in C#, I guess I’ve made some incorrect assumptions about exception safety. I’ll give it another pass and see if I can at least find out what can potentially cause a full on crash, and how to avoid it.

Appreciate the feedback Nate.

If anyone has used this with 4.10, successfully or otherwise, would be helpful to know.

@Nate. I just installed 4.11 P4 and had no issue on my end (I’m also using VS 2015 Community Update 1).
I don’t know if there is perhaps something about the particular object you were inspecting that it didn’t like.

At some point I’ll add some more debug log output to the extension, but regardless until I can repro a crash my end it’s going to be hard to track down the cause. As far as I can tell, nothing that happens directly in my C# code can cause VS to crash, it only does so if I pass some malformed data back to VS whilst telling it everything is good to go. Unsurprisingly, it doesn’t like that. Unfortunately, there’s no way I know of to get any debug info from VS when that happens, and the API I’m using has pretty much no explanation of what I should and shouldn’t do. So all in all, debugging it is a bit of a nightmare.