Usando:
Texture2D texture = this.Content.Load<Texture2D>("MyTexture");
Sarà l'utilizzo della trama predefinito a "immutabile" e consentirà solo l'associazione come vista shader.
Per generare mipmaps, l'utilizzo deve essere predefinito e vincolante sia come shaderview/renderview.
Ora hai alcune opzioni:
1/Preprocesso delle trame come DDS con mipmaps, il caricatore lo prenderebbe in considerazione.
TexConv può farlo per te. (Usa -M per specificare il conteggio dei livelli).
2/Carica la trama come sopra, crea una seconda trama utilizzando
Texture2D texturewithmips = Texture2D.New(device, texture.Width, texture.Height, MipMapCount.Auto, texture.Format,
TextureFlags.ShaderResource | TextureFlags.RenderTarget,
1,Direct3D11.ResourceUsage.Default);
Ora devi copiare il primo MIP, usando:
device.Copy(texture, 0, null, t2, 0);
Ora puoi usare:
t2.GenerateMipMaps(this.GraphicsDevice);
3/poiché con il metodo sopra perdi un po 'il gestore dei contenuti (con cache automatiche per te).
È possibile modificare la classe TextureContenTender per farlo per te, aggiungendo più opzioni per il caricamento della trama.
Se hai bisogno di più aiuto, sentiti libero.