То, о чем вы говорите, обычно называется «зависимым чтением текстур» в сообществе разработчиков мобильных приложений. Это деталь реализации определенного аппаратного обеспечения, и поэтому он действительно зависит от графического процессора, имеет ли он какие-либо последствия для производительности. Как правило, это то, что вы видите для графических процессоров PowerVR на оборудовании Apple, так как это было явно упомянуто и в Imagination, и в Apple.документация. Если я правильно помню, проблема в основном возникла из-за аппаратного обеспечения в графическом процессоре, который начал бы предварительную выборку текстур еще до того, как фрагментный шейдер начал работать, чтобы он мог лучше скрыть задержку. В документах, на которые я ссылаюсь, упоминается, что это больше не проблема оборудования Series6, поэтому, по крайней мере, на новом оборудовании Apple это не то, о чем вам нужно беспокоиться. Я, честно говоря, не уверен насчет других мобильных графических процессоров, поскольку это не моя область знаний. Вы должны попробовать и ознакомиться с их документацией, чтобы узнать наверняка.
Если вы решите выполнить поиск в Google по этой проблеме, имейте в виду, что вы, вероятно, найдете более старый материал, в котором говорится о зависимых выборках текстур на старом настольном оборудовании. Основной в первые годы пиксельных / фрагментных шейдеров, термин «зависимая выборка текстуры» относился к использованию УФ-адреса, который полагался на предыдущую выборку текстуры. Классическим примером был рендеринг карты окружающей среды с рельефным отображением, где вы хотели использовать вектор отражения, основанный на карте нормалей, для выборки карты окружающей среды. На этом старом оборудовании были некоторые существенные проблемы с производительностью, и я думаю, что это даже не поддерживалось на некоторых очень старых графических процессорах. В современных графических процессорах аппаратное обеспечение и шейдер ISA гораздо более обобщены, поэтому ситуация с производительностью намного сложнее.