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