transparent textures, refactoring