#4 support texture mipmaps