void Renderer::render()
{
    updateCamera(); 
    mScene.update();
    mGui.update();

    renderLighting();
    renderScene();
    renderGUI();    

    if(renderStateButton == ButtonType::B_TEXT)
    {
        renderTextState();
    }
}
void IndexedDirectionalLightRenderer::render( Renderer& renderer, const DirectionalLight* light, const IndexedLightingRenderData& data, int lightIdx )
{
   if ( !m_lightingShader )
   {
      return;
   }

   // first - render a shadow map, if this light is set to cast shadows
   bool drawShadows = light->castsShadows();
   if ( drawShadows )
   {
      renderShadowMap( renderer, light, data );
   }

   // and now render the light contribution
   renderLighting( renderer, light, data, drawShadows, lightIdx );
}