From Robert Osfield, adding missing member variable initializes and Output::getShaderFileNameForOutput() implementation