0

次の図のように三角形を描くときにアンチエイリアシングを有効にしたいと思います。 ここに画像の説明を入力

このページで XNA でそれを行う方法を見つけましたが、 SlimDXで同じことをしたいです。

4

1 に答える 1

2

SlimDX/Directx9 では、スワップチェーンを作成するときに、PresentParameters でこれを使用します。

Multisample = MultisampleType.FourSamples,
MultisampleQuality = 4

また、マルチサンプルの状態がオンになっていることを確認します (デフォルトではオンになっていますが、確実ではありません)。

device.SetRenderState(RenderState.MultisampleAntialias, true);

もちろん、さまざまな種類のサンプルがあります。品質/サンプルを見つけるには、次の方法を使用します。

new Direct3D().CheckDeviceMultisampleType

dx10+ デバイスでは、スワップチェーンを作成すると、SampleDescription パラメータがあり、

それに応じてサンプル数/品質を設定します

SampleDescription samdesc = new SampleDescription(4, 4);

許可されたサンプル数/品質の組み合わせを列挙するには:

int maxsamplecount = Device.MultisampleCountMaximum

次に、次を使用してサンプル数を繰り返します。

int maxquality = device.CheckMultisampleQualityLevels(format, sampleCount);

サンプル数がサポートされていない場合は 0 を返します。

于 2012-09-21T12:48:49.720 に答える