Tools I Use For Render Programming

I thought it would be useful to list the tools that I use when working on rendering on games to help me be more productive, most are obvious but here we go:

  • Visual Studio 2012
    • My primary language when coding is C++ and I program mostly on Windows so Visual Studio is by a large margin the best tool for it. The added bonus is that with Pix losing support in later versions of windows there is now built in graphics debugging tools in Visual Studio which aren't perfect yet but are definitely useful if you have nothing else available and are handy next to the built in CPU profiling tools.
  • Intel VTune
    • Very powerful CPU profiling tool. It takes a while to get used to how to set it up to get the kind of information you want accurately but once you do it is incredible. Though not useful it does have the interesting ability to let you sort the lines of your source code alphabetically as well as by performance...
  • Intel GPA
    • I learned about this one only recently but have found it to be more useful and stable than nSight in a lot of situations though still not as robust. It is particularly good when you want to capture multiple frames and then analyse them separately which is slightly more of a pain to do in other tools.
  • nVidia nSight
    • This is a big one. It has everything you need, Good overlays and a good integration into Visual Studio. The upside of this one is that is has been around a while, has good support and is relatively easy to find help with if you encounter any troubles. The downside is that its only for nVidia cards.
  • Windows Pix
    • This is the standard graphics debugger if you are using windows which comes with the DirectX SDK. It is good and helpful but lacks some of the fancier features of newer software. It appears that this is beginning to get discontinued in favor of the new built in GPU debugging tools which started at VS2012
  • DirectX 11
    • This is a personal preference over OpenGL. I find that DirectX is a lot more standardised and has better support. Although I am looking forward to Mantle.
  • Visual Assist X
    • As far as tools to help you get work done goes this is the number one. It has a whole collection of tools to get you working faster from quick switching between header and cpp to a much better auto-complete than intellisense. When it comes to working in hlsl shaders or cuda kernels there are small registry changes you can make to enable C style highlighting and auto-completion. This isnt needed for for some standard hlsl extensions in VS2012 though, which is nice.
  • Notepad++
    • This is such a useful editor to have just sitting open for when you need to open random data file. It has a lot of options for highlighting and a few nice hotkeys I wish they would copy over into Visual Studio. I am especially taken with Ctrl+D to duplicate lines without overwriting what is in the clipboard.

 

  • HONOURABLE MENTION: Google Music & InoReader
    • Google Music is relatively cheap (cheaper than buying music outright anyway) and since google seems to know everything about everyone it is pretty good at recommending new music. This lets me buildup some decent playlists for the different paces of the day. Which in an open plan office where you sometimes need headphones to mask out noise it is a god send. Syncing with my phone is just an added plus.
    • InoReader is just a Google Reader replacement which I have taken to using during my longer builds or captures. It is handy for keeping up with the latest graphics blogs and news. Especially during the big conferences when all the early releases of the presentations and papers are being put out.