message: Allow creating initial states for any resource type when necessary
diff: @@ -531,6 +531,9 @@ void GLResourceManager::ContextPrepare_InitialState(GLResource res)
  RDCERR("Unexpected type of resource requiring initial state");
  }
  + if(IsReplayMode(m_State))
  + SetInitialContents(GetOriginalID(id), initContents);
  + else
  SetInitialContents(id, initContents);
  }
  @@ -1811,14 +1814,19 @@ void GLResourceManager::Create_InitialState(ResourceId id, GLResource live, bool
  // textures to be cleared instead of copied.
  PrepareTextureInitialContents(GetID(live), id, live);
  }
  - else if(live.Namespace == eResVertexArray)
  + else if(live.Namespace == eResBuffer)
  + {
  + ContextPrepare_InitialState(live);
  + }
  + else if(live.Namespace == eResVertexArray || live.Namespace == eResFramebuffer ||
  + live.Namespace == eResFeedback || live.Namespace == eResSampler ||
  + live.Namespace == eResProgramPipe)
  {
  ContextPrepare_InitialState(live);
  }
  - else if(live.Namespace != eResBuffer && live.Namespace != eResProgram &&
  - live.Namespace != eResRenderbuffer)
  + else
  {
  - RDCUNIMPLEMENTED("Expect all initial states to be created & not skipped, presently");
  + RDCUNIMPLEMENTED("Unhandled type of resource needing initial states created");
  }
  }
  