Sdílet prostřednictvím


Souřadnicové systémy (Direct3D 10)

Souřadnicové systémy pro Direct3D 10 jsou definovány pro pixely a texely.

Rozdíly mezi Direct3D 9 a Direct3D 10:

  • Direct3D 10 definuje levý horní roh levého horního pixelu jako původ cíle vykreslení.
  • Direct3D 9 definuje střed levého horního pixelu jako původ cíle vykreslení.

 

pixelového souřadnicového systému

souřadnicový systém Texel

související témata

Souřadnicový systém pixelů

Souřadnicový systém pixelů v Direct3D 10 definuje původ cíle vykreslení v levém horním rohu. jak je znázorněno v následujícím diagramu. Pixelová středa jsou posunutá o (0,5f,0,5f) z celočíselného umístění.

diagram souřadnicového systému pixelů v direct3d 10

Souřadnicový systém pixelů pro Direct3D 9

Tady je souřadnicový systém pixelů pro Direct3D 9, který definoval původ nebo vykreslovací cíl jako střed levého horního pixelu (0,5,0,5) od levého horního rohu, jak je znázorněno v následujícím diagramu. V Direct3D 9 jsou pixelová centra v celočíselném umístění.

diagram souřadnicového systému pixelů v direct3d 9

Souřadnicový systém Texel

Souřadnicový systém texelu má svůj původ v levém horním rohu textury, jak je znázorněno na následujícím diagramu. Díky tomu jsou textury zarovnané na obrazovce triviální (v Direct3D 10), protože souřadnicový systém pixelů je zarovnaný se souřadnicovým systémem texel.

diagram souřadnicového systému texelu

Souřadnicový systém Texel

Souřadnice textury jsou reprezentovány normalizovaným nebo škálovaným číslem; každá souřadnice textury je namapována na konkrétní texel následujícím způsobem:

Pro normalizovanou souřadnici:

  • Vzorkování bodů: Texel # = floor(U * Šířka)
  • Lineární vzorkování: Left Texel # = floor(U * Width), Right Texel # = Left Texel # + 1

Pro souřadnici s měřítkem:

  • Vzorkování bodů: Texel # = floor(U)
  • Lineární vzorkování: Left Texel # = floor(U - 0,5), Right Texel # = Left Texel # + 1

Kde je šířka, je šířka textury (v texels).

Obtékání adresy textury probíhá po výpočtu umístění texelu.

zdroje (Direct3D 10)