Рубрика: Уроки программирования GLSL

Программирование шейдеров в OpenGL. Шейдеры сейчас — горячая тема, и 3D-игры показали, что они могут быть использованы для создания потрясающих эффектов. Этими уроками я постараюсь ознакомить вас с основами программирования 3D-шейдеров на понятных примерах.

GLSL: Настройка OpenGL для GLSL: Создание шейдера

Следующая таблица показывает шаги создания шейдера: Первый шаг — создание обьекта, контейнера шейдера. Функции, создающие его, возвращают дескриптор контейнера. Синтаксис OpenGL 2.0: GLuint glCreateShader(GLenum shaderType);   Параметр shaderType — GL_VERTEX_SHADER…

GLSL: Освещение: Направленный пикселный свет

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

GLSL: Освещение: Направленный свет II

Пришло время для рассмотрения зеркального отражения направленного света. Используемая световая можель — модель «Blinn-Phong», которая в свою очередь — упрощенная Phong-модель. Рассмотрим модель Phong, чтобы потом проще понять Blinn-Phong. Модель…

GLSL: Освещение

В OpenGL есть три типа источников света: направленный, точечный и «прожекторный». В этом уроке мы будем работать с направленным светом. Сначала мы рассмотрим способ, позволяющий в GLSL скопировать способ освещения…

GLSL: Практика: Toon-шейдер — Версия III

Прежде, чем закончить эти уроки, сделаем ещё одну вещь: используем свет OpenGL вместо переменной lightDir. Таким образом мы сможем объявлять свет в OpenGL и использовать его направление в шейдерах. Учтите,…

GLSL: Практика: Toon-шейдер — Версия I

Первая версия нашей программы вычисляет интенсивность освещения в вершинном шейдере (на каждую вершину). Затем пикселный шейдер использует интерполированные в вершинном шейдере данные для вычисления оттенка пиксела. Поэтому в вершинном шейдере…

GLSL: Практика: Toon-шейдер

Toon-шейдеры — это, наверное, самые простые не-фотореалистичные шейдеры, которые мы можем написать. Они используют очень малое количество цветов, в основном — оттенки одного цвета. Тона резко изменяются на изгибах модели,…