Physically based shading using nodes

Hello Blender Artists.

For a while I have been working on a real time PBR implementation for the game engine using the node editor. I was not able to find anyone who had implemented PBR using nodes that took into account roughness so I’m not sure whether this has already been done but I thought you might find my method useful / interesting.

Here is a link to the .blend file and the cubemap image (which must be put in the same directory as the .blend file) : https://copy.com/aFLrbSGsVH8oR2ty

the cubemap image is laid out such that none of the different resolution cubemaps are touching each other. This is so that I was able to add a one pixel border around each one in order to reduce seams.
I will also credit forum user HG1 for the node groups called Cubemap normals and Cubemap textures which are responsible for separating and recombining the different faces of the cubemap.

Feel free to let me know if this is useful or more importantly if any of you manage to improve it :D.