使用:
Texture2D texture = this.Content.Load<Texture2D>("MyTexture");
デフォルトのテクスチャ使用量は「不変」に使用され、シェーダービューとしてのバインディングのみを許可します。
MIPMAPを生成するには、Shaderview/Renderviewの両方として使用する必要があります。
これで、いくつかのオプションがあります。
1/テクスチャをMIPMAPでDDSとして前処理すると、ローダーはこれを考慮します。
texconv あなたのためにそれをすることができます。 (-mを使用してレベルカウントを指定します)。
2/上記のようにテクスチャをロードするには、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クラスを変更して、それを行うことができます。
あなたがもっと助けが必要な場合は、自由に気をつけてください。