Re-creating the RenderChunk lost any custom data Optifine had in them which resulted in NPEs. The reason we re-create the RenderChunks is because otherwise, once it's assigned an empty chunk once, it's not getting any further update even when moving back to filled chunks. Since just calling setNeedsUpdate works as well, this commit changes the whole mixin to doing that instead.