訓練
學習路徑
Implement finance and operations apps - Training
Plan and design your project methodology to successfully implement finance and operations apps with FastTrack services, data management and more.
Microsoft DirectX 效果可讓頂點和圖元著色器與管線狀態整合,以轉譯物件。 效果是結合著色器以產生唯一轉譯條件的下一個邏輯步驟。
效果也提供方便的方式來撰寫不同硬體版本的著色器。 因為不同的視訊卡支援不同的功能,所以應用程式可以撰寫數種可在各種裝置上執行的技術。 如此一來,如果應用程式是在最新且最大的硬體上執行,則應用程式可以執行最複雜的效果技術。 另一方面,可以自動選擇較不復雜的效果技術,以在成本較低或較不強大的硬體上執行。
效果可以取代圖形管線所執行之圖元處理的頂點處理和一部分。 使用頂點著色器和圖元著色器的效果範例位於 BasicHLSL 範例中。 您可以從 DirectX SDK 取得此範例並瞭解。 如需 DirectX SDK 的相關資訊,請參閱 DirectX SDK 在哪裡?。
如需效果的詳細資訊,請參閱下列主題:
下圖顯示管線。
管線會將輸入資料轉換成填滿框架緩衝區的輸出圖元。 輸入資料來自由物件空間中的頂點所組成的物件,或從 N 修補程式、矩形修補程式和三角形修補程式建立的較高順序表面。 輸入資料經過鑲嵌之後,管線會先執行頂點處理、基本處理和圖元處理,再產生最終圖元色彩。
頂點和圖元處理可由固定函式管線執行,或使用可程式化著色器實作。 輸入資料鑲嵌、基本處理和資料輸出是由管線狀態所控制。 這全都可以整合到效果中。 效果會設定控制管線運作方式的狀態。 效果會管理可程式化著色器以及固定函式狀態。
效果可以儲存和還原狀態,讓裝置處於與執行效果之前相同的狀態。 效果可以管理的狀態類型包括:
效果包含多個稱為技術的轉譯選項。 每個技術都會封裝全域變數、管線狀態、紋理和取樣器狀態,以及著色器狀態。 單一樣式會在轉譯階段中實作。 一或多個傳遞可以封裝在技術中。 您可以驗證所有通過和技術,以查看效果程式碼是否會在硬體裝置上執行。
效果管理狀態。 此處使用文字狀態非常廣泛,因為它包含管線需要指定轉譯條件的所有類型資訊。 這包括管線的所有功能區域。
轉譯選項是由技術和傳遞所控制。 應用程式會藉由設定一個作用中的技術,以及轉譯一或多個階段來呈現效果。 效果中的所有轉譯都是在相符的 Begin 和 End 呼叫配對內完成。 呼叫 Begin 時,會建立 stateblock 並將裝置狀態儲存 (,除非您另有指定) 。 在技術轉譯應用程式指定要轉譯的傳遞之後, 會呼叫 End 以結束使用中的技術。 除非您選擇停用此儲存和還原功能,否則效果系統會自動還原在狀態欄塊中擷取的管線狀態) (來回應。
在程式設計多階段轉譯序列時,每個都需要自己的狀態設定,效果可以減少追蹤狀態變更所需的內部處理。 若要查看效果可以儲存和還原之狀態的詳細資訊,請參閱 效果狀態 (Direct3D 9) 。
效果參數是效果中宣告的所有非靜態變數。 這可以包含全域變數和批註。 效果參數可以透過使用共用關鍵字宣告參數,然後在效果集區中建立效果,以在不同效果之間共用。
複製的效果會使用與複製效果相同的效果集區。 複製效果會產生效果的確切複本,包括全域變數、技術、傳遞和注釋。
訓練
學習路徑
Implement finance and operations apps - Training
Plan and design your project methodology to successfully implement finance and operations apps with FastTrack services, data management and more.