D3DXSPRITE
下列旗標是用來指定 Begin 方法中 flags 參數的 sprite 轉譯選項:
#define | 描述 |
---|---|
D3DXSPRITE_DONOTSAVESTATE | 呼叫 Begin 或 End 時,不會儲存或還原裝置狀態。 |
D3DXSPRITE_DONOTMODIFY_RENDERSTATE | 呼叫 Begin 時,不會變更裝置轉譯狀態。 假設裝置處於有效狀態,以繪製頂點,其中包含 usageIndex = 0 在D3DDECLUSAGE_POSITION、D3DDECLUSAGE_TEXCOORD和D3DDECLUSAGE_COLOR資料。 |
D3DXSPRITE_OBJECTSPACE | 不會修改世界、檢視和投影轉換。 目前設定為裝置的轉換是用來在) 呼叫 Flush 或 End 時 (繪製批次的 Sprite 時,轉換 sprite。 如果未指定此旗標,則會修改世界、檢視和投影轉換,以便以螢幕空間座標繪製 Sprite。 |
D3DXSPRITE_BILLBOARD | 每個 Sprite 都會在其中心周圍旋轉,使其面向檢視器。 必須先呼叫 SetWorldViewLH 或 SetWorldViewRH 。 |
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 |
相關主題