lazy initalization added for textures