Я не нашел ничего, что описывает, если вы можете связать 2D-текстуру и текстуру карты куба в одном и том же текстурном блоке, но (или так ) Я думаю, это вполне возможно. Имеет смысл разрешить это, так как все функции модификации текстуры требуют, чтобы вы в любом случае указали цель текстуры для работы.
Но спецификация OpenGL ES 2 явно запрещает использовать оба в шейдере одновременно, как говорится в главе 2.10:
Нельзя иметь переменные разных типов сэмплера.
указывая на один и тот же текстурный блок изображения внутри программного объекта. это
ситуация может быть обнаружена только при следующей команде рендеринга,
и тогда будет сгенерирована ошибка INVALID_OPERATION.
Таким образом, вы не можете использовать и sampler2D
, и samplerCube
, относящиеся к одному и тому же текстурному блоку, чтобы изменить пределы текстурных блоков вашей реализации.