added texturetype enum