Давайте сначала разберемся с этим: то, что вы читаете там, не соответствует этой функции расширения / ядра.Далее следует объяснение того, как это не соответствует действительности, если оно содержится в спецификации, и почему эта неправильная строка находится здесь в этой спецификации.
При чтении спецификаций расширения важно отметить разницу между следующим:
- Нормативный текст: это определяет, как на самом деле работает расширение.Это основная часть текста.
- Описательный текст: это дает необязательный обзор того, для чего предназначена функциональность.Он не является обязательным, то есть фактический нормативный текст может противоречить ему.
- Метатекст: это объясняет причины, лежащие в основе нормативного текста.Он также представляет информацию верхнего и нижнего колонтитула (кто написал расширение, какие даты были опубликованы и т. Д.).
Описательный текст для расширений состоит из раздела «Обзор».1014 * Нормативный текст, часть, объясняющая, как все это работает, определяется разделами «Новые процедуры и функции», «Новые токены» и любым разделом формы «Дополнения / изменения в ... Спецификации».
Все остальное - метатекст.Но особенно раздел "Проблемы".В этом разделе объясняются некоторые причины решений, принятых в спецификации.То, что вы цитировали, взято из раздела «Проблемы».Он не является обязательным и, следовательно, не имеет отношения к реальной функциональности.
Теперь вы можете задаться вопросом, как в этом случае может быть неправильным обоснование решения.Почему в разделе «Вопросы» есть фактическое утверждение о содержании расширения, которое явно ложно?
Что ж, это восходит к двум фактам об этой спецификации расширения.
Он основан на более старом расширении под названием GL_EXT_separate_shader_objects .В этом расширении вышеприведенное утверждение было верным.Вы не можете использовать пользовательские изменения с отдельными программами.Это потому, что это расширение было полностью написано NVIDIA, и они на самом деле просто собрали вместе какую-то ерунду, чтобы удовлетворить потребности некоторых пользователей.Это не было реальным решением, скорее остановка.
ARB был потрясающе ленивым в создании этой спецификации расширения.Это на самом деле абсурдно, как лениво это было построено.Например, выпуск 2 копируется verbatum из версии EXT, даже если цитируемая часть абсолютно неверна в версии ARB.
Чтение некоторых других вопросов похоже на погружение в разум параноидального шизофреника.Они делают другие не фактические утверждения, а затем сразу же противоречат друг другу.Это все равно, что сидеть на коленях на встречах АРБ или что-то в этом роде.Функциональность (в основном) в порядке;это сама спецификация расширения, которая является нежелательной.
Я понимаю ваше разочарование.Мой общий способ узнать о функции из расширения - прочитать обзор, а затем перейти к разделу «Проблемы».Обзор дает мне хорошее представление о том, что он должен делать, а раздел «Проблемы» дает мне хорошее представление о том, как выглядит реализация.Все без необходимости разбора через «spec language».
Вы не можете сделать это с этим расширением.Раздел «Проблемы» хуже, чем бесполезный;это активно вводит в заблуждение.Вам придется читать спецификации языка.