Direct3D 9 (等向性紋理篩選)
在 3D 物件的紋素中可見的失真,其表面在相對於螢幕平面的角度方向稱為不相等性。 當非等向性原始物件的像素對應至材質時,其形狀會失真。 Direct3D 將像素的非等向性測量為延長部分,意即反向對應至紋理空間之螢幕像素的長度除以寬度。
您可搭配使用非等向性紋理篩選與線性紋理篩選或 Mipmap 紋理篩選,以改善轉譯結果。 您的應用程式會呼叫 IDirect3DDevice9::SetSamplerState 方法來啟用非等向性紋理篩選。 將第一個參數的值設定為您選取紋理篩選方法的整數索引編號, (0-7) 。 傳遞第二個參數的D3DSAMP_MAGFILTER、D3DSAMP_MINFILTER或D3DSAMP_MIPFILTER,以設定放大、縮小或 mipmapping 篩選。 將第三個參數設定為 D3DTEXF_ANISOTROPIC。
您的應用程式也必須將非等向性的程度設定為大於一的值。 呼叫 IDirect3DDevice9::SetSamplerState 方法來執行此動作。 將第一個參數的值設定為整數索引編號, (0-7) 您要設定等向性程度。 傳遞D3DSAMP_MAXANISOTROPY做為第二個參數的值。 最後一個參數應該是等向性的程度。
您可以將等向性程度設定為 1,以停用等向性篩選;大於 1 的任何值會啟用它。 檢查 D3DCAPS9 結構中的 MaxAnisotropy 旗標,以判斷不等性程度可能的值範圍。
相關主題