D3DXSPRITE

下列旗標是用來指定 Begin 方法中 flags 參數的 sprite 轉譯選項:

#define 描述
D3DXSPRITE_DONOTSAVESTATE 呼叫 BeginEnd 時,不會儲存或還原裝置狀態。
D3DXSPRITE_DONOTMODIFY_RENDERSTATE 呼叫 Begin 時,不會變更裝置轉譯狀態。 假設裝置處於有效狀態,以繪製頂點,其中包含 usageIndex = 0 在D3DDECLUSAGE_POSITION、D3DDECLUSAGE_TEXCOORD和D3DDECLUSAGE_COLOR資料。
D3DXSPRITE_OBJECTSPACE 不會修改世界、檢視和投影轉換。 目前設定為裝置的轉換是用來在) 呼叫 FlushEnd 時 (繪製批次的 Sprite 時,轉換 sprite。 如果未指定此旗標,則會修改世界、檢視和投影轉換,以便以螢幕空間座標繪製 Sprite。
D3DXSPRITE_BILLBOARD 每個 Sprite 都會在其中心周圍旋轉,使其面向檢視器。 必須先呼叫 SetWorldViewLHSetWorldViewRH
D3DXSPRITE_ALPHABLEND 啟用非零 Alpha) 的 Alpha 混合,並將D3DRS_ALPHATESTENABLE設為 TRUE (。 D3DBLEND_SRCALPHA會是來源混合狀態,而 D3DBLEND_INVSRCALPHA 將會是 呼叫 SetRenderState中的目的地混合狀態。 請參閱 Alpha 混合狀態 (Direct3D 9) ID3DXFont 預期繪圖文字時會設定此旗標。
D3DXSPRITE_SORT_TEXTURE 在繪製之前依紋理排序 Sprite。 當繪製非重迭的統一深度 Sprite 時,這可能會改善效能。 您也可以將D3DXSPRITE_SORT_TEXTURE與D3DXSPRITE_SORT_DEPTH_FRONTTOBACK或D3DXSPRITE_SORT_DEPTH_BACKTOFRONT結合。 這會依深度第一個和紋理第二個來排序 Sprite 清單。
D3DXSPRITE_SORT_DEPTH_FRONTTOBACK 在繪製之前,Sprite 會依深度以前至後的順序排序。 繪製不同深度的不透明 Sprite 時,建議使用此程式。 您可以將D3DXSPRITE_SORT_DEPTH_FRONTTOBACK與D3DXSPRITE_SORT_TEXTURE結合,以依深度排序,然後再依紋理排序。
D3DXSPRITE_SORT_DEPTH_BACKTOFRONT 在繪製之前,Sprite 會依深度依後至前順序排序。 繪製不同深度的透明 Sprite 時,建議使用此程式。 您可以將D3DXSPRITE_SORT_DEPTH_BACKTOFRONT與D3DXSPRITE_SORT_TEXTURE結合,以先依深度排序,再將第二個依紋理排序。
D3DXSPRITE_DO_NOT_ADDREF_TEXTURE 停用在每次繪製時呼叫 AddRef () ,並在 Flush () 上呼叫 Release () 以提升效能。

 

常數資訊

需求
標頭 d3dx9core.h
最低作業系統 Windows 98

 

D3DX 常數