Move Texture2d::read to TextureImplementation