Attempting to refactor deferred renderer