1
我使用directx在可視c#中渲染網格。打開消除鋸齒時,沿着網格邊緣出現下面的僞影(請參閱圖像)。工件僅在朝向相機的邊緣上顯示,並且它們顯示在我加載的每個網格上。我正在使用DirectX 9.0庫,問題僅出現在我的Windows 10桌面上。我也使用Windows XP桌面進行測試,網格顯示正確。此外,多重採樣的水平似乎並沒有影響問題(但是mutisampling當設置爲none問題消失)使用多采樣沿網格邊緣創建工件(DirectX,C#)
下面是參數初始化:
PresentParameters presentParameters = new PresentParameters();
presentParameters.BackBufferFormat = Format.Unknown;
presentParameters.Windowed = true;
presentParameters.SwapEffect = SwapEffect.Discard;
presentParameters.AutoDepthStencilFormat = DepthFormat.D24X8;
presentParameters.MultiSample = MultiSampleType.FourSamples;
presentParameters.EnableAutoDepthStencil = true;
我的任何意見表示感謝。
這裏是邊緣網:
我對此很新,我很確定我是否正確。你建議我將一個後臺緩衝區複製到一個表面上,在它上面運行一些掩模(如roberts)來創建抗鋸齒效果並將其複製回到後臺緩衝區?還是有一些方法可以做到這一點? –
不,沒關係,只需在交換鏈創建時關閉autodepth和多重採樣,爲您的渲染創建新的顏色和部分表面,然後從這些表面調用解析到您的後臺緩衝區。 – galop1n
你是正確的,那應該解決從我讀過的有關它的問題,但我有問題找到如何在c#中使用曲面的例子,我從所有的嘗試/錯誤方法變得沮喪。如果你可以請給我寫一個在C#中的源代碼如何做到這一點,我會非常感激。因爲這是我工作項目的一部分,如果解決方案能夠正常工作,我甚至願意捐助20美元給您的貝寶。 –