Make Texture a virtual base class