Насколько высокопроизводительные условные выражения и неиспользуемые семплеры / текстуры добавляют пиксельным шейдерам SM2 / 3?

У нас есть один пиксельный шейдер в HLSL, который используется для немного разных вещей в нескольких местах и, как таковой, имеет несколько условных блоков, что означает, что сложные функции в некоторых случаях опускаются. Кроме того, это означает, что мы передаем текстуры в качестве параметров сэмплера, которые не всегда могут использоваться.

Я понятия не имею, насколько сильно повышается производительность, когда эти две вещи добавляют, но особенно с учетом того, что мы поддерживаем SM2.0 на интегрированных графических чипах, неэффективность проблема. Так, означает ли передача текстуры и неиспользование дополнительных накладных расходов? И используется ли if просто для добавления пары инструкций, или это может сильно повлиять на вещи из-за остановок и т.п. при оптимизации ЦП?

11
задан Mr. Boy 17 March 2011 в 14:15
поделиться