Using Doxygen to 'fix' Visual Studio's Broken Intellisense

Visual Studio’s Intellisense is less then useful for working with the Unreal Engine code base. It’s to slow, uses too much CPU, etc. I’ve disabled it and tried Visual Assist X, which has some nice features (love virtual method refactoring), but doesn’t support navigating around the code base which VS Intellisense supports well (when it works).

So I decided to try the latest Doxygen, which Epic uses for their documentation. It takes a little while to build, but once built it’s very nice. The default docs setup works well with the UE code base. I can one-click between code and docs, it’s fast (unless your run in it IE) and even has a built-in local search. If I can figure out how to hook it up to VS, it’ll be very nice.

Here’s how I built it on Windows. I assume you’re not familiar with Doxygen.

  1. Download doxygen from here. Windows setup is at the bottom of the page.

  2. Run the doxywizard. It uses a configuration file which you can edit, but the doxywizard make it easy to see everything.

  3. Set the source to your /UnrealEngine/Engine/Source directory and the destination directory to point to where you want the docs to live.

  4. On the Mode panel, set extraction mode to all entities.

  5. On the Output panel, select HTML with navigation panel and search. Turn off latex and other options.

  6. On the diagrams panel, select use built-in diagram generator if you want class diagrams in your

7)Click to the Experts tab, then on the Input Panel. Scroll down to EXCLUDE_PATTERNS and add the following patterns:



*/ThirdParty/*
*/Programs/*
*/Editor/*

The last can be left off if you’re going to be modding the editor.

7.5) Save your doxy file so you can use it later

  1. Switch to the Run tab, then click the Run doxygen button. It takes about 20 minutes or so to parse the engine. The final output takes up just over 1 GB of disk space.

  2. switch to the directory you sent the docs to and launch html/index.html You should get something like this:

Thanks for this, just followed the steps and now I have nice local documentation

Cool thanks :wink:

thank you, very helpfull

Sorry to bump an old thread but this doesnt work anymore, your stuck with the .chm file. Just so people are aware.

Going to bump this old thread since this is the only thread about generating documentation with doxygen.

I went ahead to try this on UE4.13. It works perfectly fine, don’t get deterred by the above post. There shouldn’t even be a .chm file produced if you followed the steps.

One small missing detail about step 3: tick “Scan recursively”. If you don’t do this the wizard won’t go deeper into the folders in /Source