renamed "dirty" to "invalid" on TextureData