return 1:

7.12. Итоги Набор функций для создания шейдеров и управления ими в OpenGL невелик. При создании интерфейса все было сделано для того, чтобы процесс разработки такого программного обеспечения походил на обычное программирование на С и С++. Чтобы установить OpenGL-шейдеры, необходимо выполнить следующее:

1. Создать один или несколько пустых шейдерных объектов функцией gl Create-ShaderObjectARB.

2. Передать в эти шейдеры их исходный код функцией gl ShaderSourceARB.

3. Скомпилировать каждый шейдер функцией gl Compi 1 eShaderARB.

4. Создать программный объект с помощью glCreateProgramObjectARB.

5. Присоединить шейдерные объекты к программному функцией glAttach-ObjectARB.

6. Скомпоновать программный объект функцией glLinkProgramARB.

7. Установить выполняемую программу в качестве текущей (активной) функцией glUseProgramObjectARB.

7.13. Ссылки Адреса определенных разработчиком uniform-переменных можно получить «осле компоновки функцией glGetUniformLocationARB, а значения затем устанавливаются функцией gl Uni f ormARB.

Определенные разработчиком attribute-переменные могут быть явно связаны с каким-либо индексом дополнительных атрибутов вершин функцией glBi ndAttrib-LocationARB или такое соответствие устанавливается автоматически при компоновке и может быть получено функцией gl GetAttri bLoeati onARB. Значения дополнительных атрибутов вершин можно впоследствии задавать из приложения для каждой вершины отдельно одной из версий функции gl VertexAttribARB или для массива вершин - функциями gl EnableVertexAttnbArrayARB и gl VertexAttribPointerARB.

Для получения информации о шейдерных и программных объектах также существует ряд функций.

7.13. Ссылки Ссылки на функции OpenGL, которые работают с шейдерами, приведены в приложении Б. Исходный код, подобный приведенному в данной главе, с примерами различных шейдеров можно найти на веб-сайте 3Dlabs для разработчиков.

1. SDlabs. Веб-сайт для разработчиков (http://www.3dLabs.com/support/developer).

2. Texturing and Modeling: А Procedural Approach. 3rd ed./D. S. Ebert, J. Hart, B. Mark, atal. San Francisco: Morgan Kaufmann Publishers, 2002 (http://www.text.u-ringandmodeling.com).


⇐ Предыдущая| |Следующая ⇒