共用方式為


座標系統 (Direct3D 10)

Direct3D 10 的座標系統會針對圖元和紋素定義。

Direct3D 9 與 Direct3D 10 之間的差異:

  • Direct3D 10 會將左上角的左上角定義為轉譯目標的原點。
  • Direct3D 9 會將左上角圖元的中心定義為轉譯目標的原點。

 

圖元座標系統

  • Direct3D 9 像素座標系統

紋素座標系統

相關主題

圖元座標系統

Direct3D 10 中的圖元座標系統會定義左上角轉譯目標的原點。 如下圖所示。 圖元中心會從整數位置位移(0.5f,0.5f)。

direct3d 10圖表

Direct3D 9 的像素座標系統

如需參考,以下是 Direct3D 9 的圖元座標系統,其會將原點或轉譯目標定義為左上方圖元的中心(0.5,0.5),如下圖所示。 在 Direct3D 9 中,圖元中心位於整數位置。

direct3d 9圖表

紋素座標系統

紋素座標系統其原點位於紋理左上角,如下圖所示。 這使得轉譯螢幕對齊紋理變得微不足道(在 Direct3D 10 中),因為圖元座標系統與紋素座標系統對齊。

紋素座標系統的 圖表

紋素座標系統

紋理座標會以正規化或縮放數位表示;每個紋理座標都會對應至特定的材質,如下所示:

針對標準化座標:

  • 點取樣:紋素 # = floor(U * 寬度)
  • 線性取樣:左紋素 # = floor(U * Width),右紋素 # = 左紋素 # + 1

針對縮放座標:

  • 點取樣:紋素 # = floor(U)
  • 線性取樣:左紋素 # = floor(U - 0.5),右紋素 # = 左紋素 # + 1

其中寬度,是紋理的寬度(以材質為單位)。

紋理位址換行會在計算紋素位置之後發生。

資源 (Direct3D 10)