共用方式為


D3D10_DDI_RASTERIZER_DESC結構 (d3d10umddi.h)

D3D10_DDI_RASTERIZER_DESC結構描述轉譯器狀態。

語法

typedef struct D3D10_DDI_RASTERIZER_DESC {
  [in] D3D10_DDI_FILL_MODE FillMode;
  [in] D3D10_DDI_CULL_MODE CullMode;
  [in] BOOL                FrontCounterClockwise;
  [in] INT32               DepthBias;
  [in] FLOAT               DepthBiasClamp;
  [in] FLOAT               SlopeScaledDepthBias;
  [in] BOOL                DepthClipEnable;
  [in] BOOL                ScissorEnable;
  [in] BOOL                MultisampleEnable;
  [in] BOOL                AntialiasedLineEnable;
} D3D10_DDI_RASTERIZER_DESC;

成員

[in] FillMode

值,指定基本類型的填滿模式。 這個成員必須設定為D3D10_DDI_FILL_MODE列舉的下列其中一個值。

價值 意義
D3D10_DDI_FILL_WIREFRAME (2) 填滿線框。
D3D10_DDI_FILL_SOLID (3) 填滿實心。

[in] CullMode

值,指定反面三角形的撲殺方式,如果有的話。 這個成員必須設定為D3D10_DDI_CULL_MODE列舉的下列其中一個值。

價值 意義
D3D10_DDI_CULL_NONE (1) 請勿擷取任何三角形。
D3D10_DDI_CULL_FRONT (2) Cull 前臉。
D3D10_DDI_CULL_BACK (3) Cull back face.

[in] FrontCounterClockwise

布爾值,指定是否以逆時針順序提供的頂點(相對於點陣化器)為正面。 TRUE 表示它們為 ;FALSE 表示逆時針頂點表示反向。

[in] DepthBias

用於偏差公式的深度偏差常數。 如需 DepthBias的詳細資訊,請參閱下列一節。

[in] DepthBiasClamp

用於偏差公式的單精度浮點數。 如需 DepthBiasClamp的詳細資訊,請參閱下列一節。

[in] SlopeScaledDepthBias

用於偏差公式的單精度浮點數。 如需 SlopeScaledDepthBias的詳細資訊,請參閱下列一節。

[in] DepthClipEnable

布爾值,指定驅動程式是否應該根據檢視區深度範圍裁剪頂點 z 座標。 TRUE 表示要裁剪;FALSE 表示不裁剪。

[in] ScissorEnable

布爾值,指定驅動程式是否應該捨棄落在適當剪刀矩形區域外的圖元。 TRUE 表示要捨棄;FALSE 表示不捨棄。

[in] MultisampleEnable

布爾值,指定驅動程式是否必須遵循多重取樣點陣化規則。 TRUE 表示要遵循規則;FALSE 表示不需要遵循規則。 即使轉譯目標只包含單一樣本,多重取樣點陣化規則仍會保留 true。

[in] AntialiasedLineEnable

布爾值,指定驅動程式是否應該轉譯遵循反鋸齒線點陣化規則的線條。 TRUE 表示要遵循規則;FALSE 表示不需要遵循規則。 如果改用多重取樣點陣化規則,驅動程式會忽略 AntialiasedLineEnable 中的值

言論

以陰影緩衝區為基礎的陰影的其中一個成品是「陰影瘡」(也就是,由於從陰影緩衝區中與陰影緩衝區中相同表面深度相比,在計算表面深度時不自覺,因此會以間歇性的方式遮蔽本身。 減輕陰影瘡的其中一種方法,就是在轉譯陰影緩衝區時,使用 DepthBiasSlopeScaledDepthBias 成員。 意圖是在轉譯陰影緩衝區時,將表面推送到足夠的表面。 在陰影測試期間,透過著色器計算的 z 來比較這些表面時,比較結果會在整個表面保持一致,並避免局部自我陰影。

不過,單獨使用 DepthBiasSlopeScaledDepthBias 可以引進一些成品。 例如,極其陡峭的多邊形會導致偏差方程式爆炸,這會將多邊形與陰影圖中的原始表面相距極遠。 考慮一個陡峭的臉,相對於光線,它被推開非常遠,相對於父對象的維度,通過深度偏差。 假設此臉部被較淺的臉部包圍,偏差方程式推出得少得多。 產生的陰影圖有一個巨大的不連續性,可能會導致陰影中的洞,由一個表面投射到另一個表面比爆炸的臉部更近。 協助緩解此特定問題的其中一種方法是使用 depthBiasClamp 成員 DepthBiasClamp,以提供應用程式可設定的上限(正值或負值)的 z 偏差大小。

要求

要求 價值
最低支援的用戶端 可在 Windows Vista 和更新版本的 Windows作系統中使用。
標頭 d3d10umddi.h (包括 D3d10umddi.h)

另請參閱

CalcPrivateRasterizerStateSize

CreateRasterizerState