D3DXFX
儲存和建立效果的選項。
下表中的常數定義於 d3dx9effect.h 中。
效果狀態儲存和還原旗標 | 描述 | |
D3DXFX_DONOTSAVESTATE | 呼叫 Begin 或在 呼叫 end時還原時,不會儲存狀態。 | |
D3DXFX_DONOTSAVESAMPLERSTATE | stateblock 會在呼叫 Begin 時儲存狀態,並在 呼叫 end時還原狀態。 | |
D3DXFX_DONOTSAVESHADERSTATE | stateblock 會在呼叫 Begin 時儲存狀態(除了著色器和著色器常數外),並在 呼叫 end時還原狀態。 | |
效果建立旗標 | 描述 | |
D3DXFX_NOT_CLONEABLE | 效果將是不可複製的,而且不會包含任何著色器二進位數據。 GetPassDesc 不會傳回著色器函式指標。 設定此旗標可減少約 50% 的效果記憶體使用量,因為它不需要讓效果系統將著色器複本保留在記憶體中。 D3DXCreateEffect、D3DXCreateEffectFromFile和 D3DXCreateEffectFromResource使用這個旗標。 | |
D3DXFX_LARGEADDRESSAWARE | 啟用將效果資源配置到機器的 uppder 位址空間。 其中一個重要限制是您無法使用字串並交替處理。 例如,下列專案將無法再運作。
相反地,GetParameterByName 之類的方法必須用來儲存參數的句柄,然後用來將變數傳遞至效果。 |
下表中的常數預設不會定義,而且必須由開發人員定義。
效果預處理器 #define | 描述 |
---|---|
D3DXFX_LARGEADDRESS_HANDLE | 在包含 d3dx9.h 之前定義此值,讓應用程式在嘗試將字串傳遞至D3DXHANDLE參數時無法編譯。 這可協助確保有效的資訊會傳遞至運行時間。 |
效果連結器旗標 | 描述 |
LARGE_ADDRESS_AWARE | 設定連結器旗標LARGE_ADDRESS_AWARE = 1 可讓應用程式在需要時配置超過 2GB 位址限制的資源。 |
效果系統會使用狀態區塊自動儲存和還原狀態。 如需狀態區塊的詳細資訊,請參閱 狀態區塊儲存和還原狀態 (Direct3D 9)。
相關主題