共用方式為


Direct3D 10) (效能考慮

使用效果集區

轉譯管線通常會使用許多著色器來轉譯不同的物件類型和特殊效果。 著色器是所有著色器之間通用的狀態,例如世界矩陣或光線位置,以及每個著色器特有的其他狀態,例如物件的擴散色彩或反射醒目提示計算。 效果集區是在記憶體中儲存狀態的位置,用於許多著色器,以及著色器、轉譯狀態物件和常數緩衝區等通用裝置物件。 效能改善的結果是針對所有需要該狀態的著色器更新一次通用狀態。

效果集區是效果狀態的共用記憶體位置。 集區建立方式與效果類似;它可以從記憶體 (或檔案或資源) 建立。 這會導致兩種不同類型的效果:不相依于其他效果狀態的全域效果,與相依于另一個效果中狀態的子效果。

您可以指定效果是全域效果, (預設大小寫) 或子效果 (,方法是在建立效果時提供 D3D10_EFFECT_COMPILE_CHILD_EFFECT 旗標) 。 全域效果可作為效果集區;子效果不能是效果集區。

轉譯效果

Direct3D 10 (效果)