Continued work on GraphicsEngine
Made actual Globals.h/cpp files for the application, use sparingly. Currently just references the application-wide logger object and resource cache.
GraphicsEngineTexture object is produced by the graphics engine when textures are loaded. Managed by shared pointers, when these objects are destroyed they issue commands back to the graphics engine to free the texture.
ColorShader updated to take in specular and diffuse lighting parameters per-point.
Window.h now uses glm::vec3 for shifts/position.
Rotation and tilt of debug camera moved to seperate functions.
More keyboard keys being properly translated and dispatched.
Diffuse lighting code scattered around a lot of locations: ColorShader.frag, ShaderProgram, etc...
ResourceHandles now have extra data.
ColorShader.vert now passes untransformde normals, may be changed later. Working on texture implementations so that I can see how shadows are working better.
CubeModel is using glDrawElements instead of drawArrays, more efficient and I needed to make sure I knew how to properly use it.
A bit of preliminary code for drawing shadow-maps.
GraphicsEngine now uses the global resource cache to pull it's own shaders out of the cache rather than having them passed in at construction.
Substantial changes to the ways textures are being loaded. The graphicsEngine now directly uses the global resource cache to pull out textures after being provided with names, returning GraphicsEngineTexture object mentioned above.
Main function is now responsible for creating globaResourceCache.