2011-02-06 5 views
3

Является ли glBindBuffer равнозначным glBindBufferARB?OpenGL: можно ли смешивать glBindBuffer с glBindBufferARB?

Являются ли перечисления (например, GL_ARRAY_BUFFER и GL_ARRAY_BUFFER_ARB) равноценными? Можно ли использовать переменную non-_ARB в glBindBufferARB?

Можно ли смешивать + сопоставление вызовов glBindBuffer() с помощью glBindBufferARB()?

ТАКЖЕ: если карта поддерживает расширение _ARB, всегда ли она поддерживает основную функцию GL - даже если ее версия OpenGL не обновляется?

ответ

3

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

Однако в этом конкретном случае они оказываются точно такими же, как и с теми же константами, поэтому ... хотя это не является законным, «нормально» использовать их взаимозаменяемо (то есть никто не заметит, скажите им).

В общем случае вы не можете предположить, что если присутствует расширение ARB, то и основной функционал будет присутствовать. Существует множество расширений ARB, которые предназначены исключительно для реализации OpenGL-реализаций, которые по какой-то причине не могут реализовать полную версию, тем не менее, предоставляют не менее функциональность, которую может предоставить оборудование.

Смежные вопросы