С использованием:
Texture2D texture = this.Content.Load<Texture2D>("MyTexture");
Будет использование текстуры по умолчанию в «неизменном» и позволит только привязывать только в качестве шейдера.
Чтобы сгенерировать MIPMAP, использование должно быть по умолчанию и привязке в качестве Shaderview/renderview.
Теперь у вас есть несколько вариантов:
1/Предварительно обрабатывать свои текстуры как DDS с помощью MIPMAP, загрузчик учитывает это.
Texconv может сделать это для вас. (Используйте -m, чтобы указать количество уровней).
2/Загрузите текстуру, как указано выше, создайте вторую текстуру, используя
Texture2D texturewithmips = Texture2D.New(device, texture.Width, texture.Height, MipMapCount.Auto, texture.Format,
TextureFlags.ShaderResource | TextureFlags.RenderTarget,
1,Direct3D11.ResourceUsage.Default);
Теперь вам нужно скопировать первый MIP, используя:
device.Copy(texture, 0, null, t2, 0);
Теперь вы можете использовать:
t2.GenerateMipMaps(this.GraphicsDevice);
3/так как с методом выше, вы вроде потеряете диспетчер контентов (с автокэшами для вас).
Вы можете изменить класс TextureContentReader, чтобы сделать это для вас, добавив больше параметров для загрузки текстур.
Если вам нужно больше помощи, не стесняйтесь.