I get GL_INVALID_OPERATION: glDrawElements: Two textures of different types use the same sampler location
If the number of textures in the texture array change. This feels like a design flaw on GLs part. I don't think its fully recompiling with the new pointers of the new texture array. So I think it notices what used to be either a Texture or Null is now the other and it gets upset. Will explore how to fix this.