Здесь представлен глоссарий терминов OpenGL, которые встречаются на протяжении изучения OpenGL, компьютерной графики и смежных областей. 150+ терминов.
A
Assimp (англ. «Open Asset Import Library» = «Свободная Библиотека Импорта Ресурсов») — это библиотека импорта 3D-моделей.
C
CMake — это инструмент, который с использованием заранее определенных сценариев может из коллекции файлов исходного кода сгенерировать файлы проектов/решений под выбранную пользователем IDE (например, для Visual Studio, Code::Blocks или Eclipse).
Compatibility-profile — это набор функций OpenGL, в котором работают все возможности как новых, так и старых версий OpenGL.
Core-profile — это набор основных функций OpenGL, составляющих его «ядро», из которого, начиная с OpenGL версии 3.0, были удалены все устаревшие функции.
F
FreeType — это библиотека, которая используется для растеризации шрифтов и операций над ними. Она используется в таких продуктах, как macOS, Java, PlayStation, Linux и Android. FreeType делает особенно привлекательным то, что она способна загружать TrueType-шрифты.
G
GLAD — это библиотека загрузки расширений, которая загружает и устанавливает для нас все указатели на OpenGL-функции, чтобы мы могли использовать все (современные) функции OpenGL.
GLFW (англ. «Graphics Library FrameWork») — это библиотека, написанная на языке Си, специально предназначенная для работы с OpenGL, которая предоставляет все необходимые инструменты для рендеринга на экране различных объектов.
GLM — это математическая библиотека, специально разработанная для OpenGL.
GLSL — это высокоуровневый язык программирования, который используется для написания шейдеров.
G-буфер — это собирательный термин для всех текстур, задействованных на этапе прохода освещения и хранящих в себе информацию, так или иначе связанную с освещением.
L
LookAt-матрица — это специальный тип матрицы вида, которая создает систему координат, где к координатам применяются преобразования вращения и перемещения таким образом, что в результате пользователь смотрит на заданную цель из заданной позиции.
M
Mesh (или «меш») — это минимальная единица визуализации объекта. Когда 3D-дизайнеры в своих программах моделируют какой-нибудь объект, то, обычно, его пытаются сделать не цельным, а составным. Каждая такая модель имеет несколько подмоделей/фигур, из которых она строится. При этом каждая из этих отдельных фигур называется mesh.
O
OpenGL — это формальная спецификация графического API, которая определяет макет и выходные данные каждой функции.
S
sRGB-пространство — это стандарт представления цветового спектра с использованием модели RGB.
sRGB-текстура — это текстура, цвета которой соответствуют sRGB-пространству.
SSAO (от англ. «Screen-Space Ambient Occlusion») — это алгоритм фонового непрямого затенения, работающий в режиме реального времени, при котором для определения величины фонового затенения используется буфер глубины сцены в координатах экранного пространства. Является расширением алгоритма затенения «AO».
stb_image — это библиотека загрузки изображений.
T
TBN-матрица — это матрица, составленная из касательного, бикасательного и нормального векторов. Используется при преобразовании вектора касательного пространства в другое координатное пространство.
TrueType — это формат компьютерных шрифтов, разработанный компанией Apple в конце 1980-х годов. Файлы с такими шрифтами имеют расширение .ttf.
TrueType-шрифт — это набор глифов, определяемых не пикселями или любым другим немасштабируемым решением, а математическими уравнениями (комбинацией сплайнов).
U
uniform-буфер — это инструмент в OpenGL, позволяющий объявить набор глобальных uniform-переменных, которые остаются неизменными при использовании любого количества шейдерных программ. При работе с uniform-буферами мы указываем лишь единожды соответствующие uniform-переменные в фиксированной памяти графического процессора.
uniform-переменная — это специальный тип GLSL-переменной, которая является глобальной (каждый шейдер в шейдерной программе может получить доступ к этой uniform-переменной) и должна быть установлена только один раз.
Z
Z-конфликт — это основной визуальный артефакт, возникающий когда две плоскости или два треугольника расположены настолько близко друг к другу, что буферу глубины не хватает точности, чтобы определить, какая из двух фигур находится на переднем плане, а какая — на заднем. В результате получается, что две фигуры постоянно меняют порядок своей видимости.
А
Алиасинг (англ. «aliasing») — это негативный визуальный эффект, наблюдаемый в виде наличия у объектов сцены зазубренных (несглаженных) краев.
Артефакты — это нежелательные визуальные эффекты, такие как искажения цветов, форм объектов, несовместное движение частей изображения и т.д.
Б
Бикасательный вектор — это вектор, перпендикулярный вектору нормали и касательному вектору.
Билинейная фильтрация — это метод фильтрации текстур, при котором для получения окончательного значения пикселя используется выборка из нескольких пикселей исходной текстуры с последующим усреднением их значений.
Буфер глубины (англ. «Z-buffer») — это массив данных, дополняющих изображение, благодаря которому можно реализовать учет удаленности элемента изображения. Когда видеокарта отображает пиксель, его удаленность заносится в буфер глубины. Если пиксели двух отображаемых объектов перекрывают друг друга, то их значения глубины сравниваются, и рисуется тот пиксель, который ближе. Очень эффективен и практически не имеет недостатков при аппаратной реализации.
Буфер трафарета — это буфер, хранящий информацию о каждом фрагменте. При выводе фрагментов на экран иногда возникает необходимость выводить не все фрагменты, а только часть из них, т.е. наложить трафарет (маску) на изображение. Для этого в OpenGL используется буфер трафарета. А далее, исходя из теста трафарета, выбрать, какие фрагменты необходимо отобразить, а какие — отбросить.
В
Вектор — это математическая сущность, определяющая направление и/или положение в любом измерении.
Векторное умножение/произведение — это математическая операция умножения двух векторов, возвращающая в результате третий вектор, перпендикулярный плоскости, в которой лежат умножаемые векторы.
Вершина — это набор данных, представляющих одну точку.
Вершинный атрибут — это набор данных, связанный с вершиной, например: координаты её местоположения в пространстве, цвет, нормаль, текстурные координаты и т.д. Когда речь заходит конкретно о вершинном шейдере, то принято каждую его входную переменную называть вершинным атрибутом.
Вершинный шейдер — это программа, выполняемая видеокартой и производящая математические операции с вершинами. Является первым этапом графического конвейера.
Всенаправленные карты теней — это способ моделирования теней, при котором вместо двухмерной карты глубины используется кубическая карта глубины.
Вывод отладочной информации (англ. «debug output») — это OpenGL-расширение, которое упрощает отладку и оптимизацию приложений OpenGL. Если вкратце, то это расширение предоставляет драйверу метод для передачи информации в текстовом сообщении приложению.
Г
Гамма-коррекция — это применение коррекции гаммы к конечному выходному цвету картинки перед её отображением на экране.
Геометрическая функция — функция, используемая для статистической аппроксимации площади поверхности, где микрограни, перекрывая друг друга, вызывают окклюзию световых лучей.
Геометрический шейдер — это один из этапов графического конвейера (наряду с вершинным и фрагментным шейдерами), предназначенный для выполнения ряда задач, требующих работы на уровне отдельных геометрических примитивов.
Глиф (англ. «glyph») — это символ, входящий в состав растрового шрифта. Всякий раз, когда вы хотите визуализировать символ, вы производите выборку соответствующего глифа и визуализируете на плоский прямоугольник нужную секцию растрового шрифта.
Глубина (или «значения глубины») — это информация о фрагментах (например, пикселях), использующаяся во время растеризации для того, чтобы определить, какие фрагменты блокируют (перекрывают) другие.
Глубинный параллакс — является расширением обычного параллакса. Общая идея глубинного параллакса состоит в том, что вместо одной точки выборки он делит весь диапазон глубин на несколько слоев одинаковой высоты/глубины. Для каждого слоя производится выборка значения из карты глубины.
Графический конвейер — это весь процесс преобразований, через который должны пройти вершины, прежде чем оказаться в виде одного или нескольких пикселей на экране.
Д
Двулучевая функция отражательной способности (сокр. «BRDF» от англ. «Bidirectional Reflectance Distribution Function») — это функция, моделирующая отражательные и преломляющие свойства материала на основе теории микрограней.
Динамическая карта окружения — это динамически создаваемая кубическая карта окружения объекта, используемая в качестве карты окружения.
Диффузная карта — это текстурное изображение, которое задает рассеянный цвет для каждого фрагмента.
Е
Единичная матрица — это квадратная матрица размера N×N
, у которой элементы, стоящие на диагонали от верхнего-левого угла до нижнего-правого (такую диагональ принято называть главной диагональю), равны 1
, а остальные — равны 0
.
З
Закон больших чисел — это принцип, утверждающий, что чем больше единиц охвачено статистическим наблюдением, тем лучше проявляется общая закономерность. Например, если вы измеряете некоторое меньшее подмножество (размера N
) случайных выборок из общей совокупности, то результат будет приближен с некоторой погрешностью к истинному ответу и становится еще ближе к нему по мере увеличения числа выборок N
.
Затенение по Гуро — это модель освещения Фонга, применяемая в вершинном шейдере. При использовании небольшого количества вершин создает заметные артефакты. Повышается производительность сцены в обмен на потерю визуального качества.
Затенение по Фонгу — это модель освещения Фонга, применяемая во фрагментном шейдере.
Затухание (англ. «attenuation») — это процесс уменьшения интенсивности света с увеличением пройденного расстояния, используемый в точечных источниках света и прожекторах.
Зеркальный лепесток — это общая форма возможных исходящих отражений света, определяемая материалом поверхности.
И
Инстансинг — это метод, при котором мы рисуем сразу несколько экземпляров объекта с помощью одного вызова рендеринга, экономя на взаимодействии между CPU и GPU.
Интерполирование — это способ нахождения промежуточных значений величины по имеющемуся дискретному набору известных значений.
Интерфейсный блок — это встроенная в GLSL возможность группировать переменные, пересылаемые от одного шейдера к другому.
К
Кадр/Фрейм (англ. «frame») — итерация цикла рендеринга.
Карта глубины (или «теневая карта», «карта теней») — это текстура глубины, визуализируемая по направлению от источника света, которая используется при проведении теста теней.
Карта нормалей — это RGB-текстура, в которой хранятся векторы нормалей фрагментов поверхности, где R-, G- и B- каналы текстуры соответствуют X-, Y- и Z- координатам векторов нормалей.
Карта облученности — это диффузная часть интеграла отражения, накопленная от всего окружающего непрямого света. Карта облученности отображает что-то вроде усредненного цвета окружающей среды. Выборка любого направления из данной карты даст нам облученность сцены в данном конкретном направлении.
Карта отраженного цвета (англ. «specular map») — это текстурная карта, которая задает интенсивность отражения/цвет для каждого фрагмента. Позволяет создавать зеркальные блики только на определенных участках объекта.
Касательное пространство — это совокупность всех касательных векторов к поверхности в заданной точке.
Касательный вектор — это элемент касательного пространства, например: элемент касательной прямой к кривой, касательной плоскости к поверхности и так далее.
Крен (англ. «roll») — это поворот объекта вокруг его продольной оси.
Кубическая карта (англ. «cube map») — это текстура, содержащая 6 независимых 2D-текстур, каждая из которых представляет отдельно взятую сторону текстурированного куба.
Л
Локальное пространство — это пространство, в котором начинается объект, включающее все координаты относительно начала (исходной точки) объекта.
М
Материал — это фоновый, рассеянный и отраженный цвета, которые отбрасывает объект. Они задают цвет объекта.
Матрица — это прямоугольный массив математических выражений с полезными свойствами преобразования.
Матрица модели — это матрица преобразования, которая транслирует, масштабирует и/или вращает ваш объект, чтобы поместить его в том месте/ориентации окружающего мира, в котором он должен находиться.
Мипмап (англ. «mipmap») — это сохраненная уменьшенная версия текстуры, где текстура нужного размера выбирается в зависимости от расстояния до зрителя.
Мировое/Глобальное пространство — это все координаты относительно глобального начала координат.
Модель Блинна-Фонга — это дополненная модель освещения Фонга, представленная в 1977 году Джеймсом Ф. Блинном. Во многом схожа с моделью Фонга, но реализация отражения у нее выполнена несколько иначе, а именно: вместо вектора отражения используется срединный вектор.
Модель освещения Фонга — это модель для аппроксимации реального освещения путем вычисления фонового, рассеянного и отраженного компонентов света.
Мультисэмпл-буфер — это буфер с возможностью хранить более одного значения цвета выборки на пиксель.
Н
Наложение текстуры — это режим работы OpenGL, при котором он должен выполнять сэмплирование текстур, когда их координаты находятся вне диапазона (0; 1)
.
Направленный свет — это источник света, имеющий только направление. Он моделируется так, чтобы находиться на бесконечном расстоянии. Это приводит к тому, что все его световые лучи кажутся параллельными, а вектор его направления, таким образом, остается одним и тем же на всей сцене (объекте освещения).
Непосредственный режим — это режим визуализации графики в OpenGL, требующий от программиста диктовать точную последовательность шагов для построения результирующего растрового изображения.
Низкий динамический диапазон (сокр. «LDR» от «Low Dynamic Range») — это диапазон значений яркости цветов фрагментов, соответствующий стандартному диапазону [0.0; 0.1]
.
Нормализация вектора — это процесс получения единичного вектора (длина которого равна 1
). Для нормализации вектора достаточно разделить каждый компонент вектора на его норму. Используется для упрощения вычислений (например, при нахождении углов между векторами) и в тех случаях, когда нужно определить только направление для объекта.
Нормализованные координаты устройства (англ. «NDC» от «Normalized Device Coordinates») — это система координат, в которой оказываются ваши вершины после перспективного деления, выполняемого в отсеченных координатах. Все координаты вершин в системе NDC, лежащие в диапазоне [-1.0; 1.0]
, не будут отброшены или обрезаны и, в конечном итоге, отобразятся на экране.
Нормальная матрица — это матрица размера 3×3, которая является матрицей модели (или модели-вида), не осуществляющая операции трансляции/перемещения. Она модифицируется таким образом (используя операции инвертирования-транспонирования), что при применении неоднородного масштабирования нормальные векторы остаются обращенными в правильном направлении. В противном случае, при использовании неоднородного масштабирования, нормальные векторы искажаются.
Нормальный вектор — это единичный вектор, перпендикулярный поверхности.
О
Объект — это набор параметров, представляющий подмножество состояния/контекста OpenGL.
Объект Вершинного Буфера (англ. «VBO» от «Vertex Buffer Object») — это буферный объект, который выделяет память в графическом процессоре и хранит там все данные вершин для использования видеокартой.
Объект Вершинного Массива (англ. «VAO» от «Vertex Array Object») — это объект, который хранит информацию о состоянии буфера и атрибута вершины.
Объект Элементного Буфера (англ. «EBO» от «Element Buffer Object») — это объект буфера, который хранит индексы в графическом процессоре для индексированной отрисовки.
Однородная координата — это w-компонента вектора, позволяющая выполнять матричные трансляции с помощью 3D-векторов. Используется при построении 3D-перспективы.
Окно просмотра (англ. «Viewport») — это часть 2D-окна, в которой мы рендерим наши сцены.
Окружающее/Фоновое освещение (англ. «ambient lighting») — это аппроксимация глобального освещения путем придания каждому объекту небольшой яркости, чтобы объекты не были полностью темными, если они непосредственно не освещены.
Ортографическая проекция — это проекция, при которой проекционные лучи перпендикулярны плоскости, на которую проецируется объект.
Освещение на основе изображения (сокр. «IBL» от англ. «Image Based Lighting») — это набор методов освещения объектов путем рассмотрения окружающей среды как одного большого источника света. Обычно этот эффект достигается при помощи определенных манипуляций с кубической картой (изображением) окружения.
Отражение — это свойство объекта (или части объекта) отражать окружающую его среду (например, цвета объекта более или менее равны его окружению в зависимости от угла зрения зрителя). Зеркало является отражающим объектом: оно отражает свое окружение в зависимости от угла зрения зрителя.
Отраженное освещение (англ. «specular lighting») — определяет яркие блики, которые возникают, когда свет падает на поверхность объекта и отражается обратно в сторону зрителя. Зависит от направления взгляда зрителя, направления света и величины блеска, которые определяют величину рассеивания блика.
Отсеченное пространство — это все координаты, рассматриваемые из точки расположения камеры, но с применением проекции. Это пространство, в котором должны находиться координаты вершин, представляемые в качестве выходных данных вершинного шейдера. OpenGL же делает всё остальное: отсечение/перспективное деление.
Отложенное затенение — это способ визуализации объектов, при котором большая часть тяжелого рендеринга (например, освещение) откладывается на более позднюю стадию визуализации.
П
Перспектива — открывающийся с места наблюдения вид вдаль, при котором происходит искажение пропорций и форм реальных тел, находящихся на удалении от места наблюдения. Например, с увеличением расстояния будет казаться, что два параллельных рельса сходятся в одну точку на горизонте.
Перспективное деление — это операция по преобразованию 4D-координат отсеченного пространства в 3D-координаты NDC. Осуществляется при помощи деления координат вектора на значение его же 4-й компоненты.
Поле зрения (англ. «FoV») — это угловое пространство, обозреваемое глазом при зафиксированном взгляде и неподвижной голове. В реальном мире значение поля зрения составляет порядка 45 градусов. В компьютерных играх данная величина варьируется в среднем от 65 до 120 градусов (в зависимости от используемых монитора и настроек графики).
Поток излучения зрения (или «энергетический поток») — это переносимая источником света энергия, измеряемая в Ваттах.
Преломление — это изменение направления света вследствие изменения типа материала, через который проходит свет. Это то, что мы обычно видим на поверхности, похожей на воду, где свет не идет четко по прямой, а немного изгибается. Это все равно, что смотреть на свою руку, когда она наполовину в воде.
Примитивы — это простейшие элементы (точка, линия, полигон и пр.), из которых строятся более сложные объекты.
Проекция — это перенос координат (или изображений) пространственных объектов на плоскость (или какую-либо другую поверхность).
Прожектор (англ. «spotlight») — это источник света, который представляет собой световой конус, ориентированный вдоль заданного направления.
Пространство окна просмотра (или «Видовое пространство») — это все координаты, рассматриваемые с точки, в которой установлена камера.
Пространство экрана — это все координаты картинки, если смотреть с позиции экрана. Координаты варьируются от 0 и до ширины/высоты экрана.
Процентно-приближенная фильтрация (сокр. «PCF» от англ. «Percentage-Closer Filtering») — это метод, при помощи которого можно сгладить неровные края объекта путем фильтрации на основе нескольких точек выборки вокруг положения фрагмента и с последующим усреднением результатов.
Процесс ортогонализации Грама-Шмидта — это алгоритм построения системы координат с тремя перпендикулярными единичными осями (т.н. «ортонормированного базиса»).
Р
Равнопромежуточная карта — это карта окружения, основной особенностью которой является то, что её изображение выглядит искаженным и не содержит ни одной из 6 отдельных граней кубической карты окружения. Данная карта окружения проецируется из сферы на плоскость таким образом, что мы можем сохранить окружение в одном изображении.
Размытие по Гауссу — это эффект постобработки, при котором происходит размытие изображения на основе т.н. Гауссовой кривой, которая обычно описывается как колоколообразная кривая, дающая высокие значения вблизи её центра и постепенно убывающие к её краям.
Раннее тестирование глубины — позволяет выполнить проверку глубины до запуска фрагментного шейдера. Всякий раз, когда становится ясно, что фрагмент не будет виден (он находится за другими объектами), его можно досрочно отбросить.
Рассеянное/Диффузное затенение (англ. «diffuse shading») — это освещение, которое становится тем сильнее, чем больше вершина/фрагмент повернуты в сторону источника света. Использует нормальные векторы для вычисления углов.
Растеризатор (англ. «rasterizer») — это комбинация всех алгоритмов и процессов, находящихся между финальным результатом обработки вершин и фрагментным шейдером.
Растровый шрифт — это шрифт, в котором каждый глиф хранится в виде массива пикселей (т.е. растрового изображения). Растровые шрифты — это просто наборы растровых изображений глифов.
Расширенный динамический диапазон (сокр. «HDR» от «High Dynamic Range») — это технология работы с изображениями и видео, при которой значения яркости цветов фрагментов могут выходить за пределы стандартного диапазона значений [0.0; 1.0]
.
Рендербуфер — это фактический буфер (например, массив байтов, целых чисел, пикселей или чего-то еще), добавленный в OpenGL после введения текстур в качестве возможного типа прикрепляемого объекта фреймбуфера. Объекты рендербуфера хранят все данные рендеринга непосредственно в своем буфере без каких-либо преобразований в текстурные форматы, что делает их более быстрыми в качестве записываемого носителя данных.
Рендеринг (англ. «rendering») — это процесс преобразования геометрических, числовых, а также иных данных сцены/объекта в изображение, выводимое на экран компьютера (другими словами, визуализация).
Рыскание (англ. «yaw») — это угловые движения объекта относительно вертикальной оси, а также небольшие изменения курса вправо или влево.
С
Сглаживание (англ. «anti-aliasing») — это методы, которые призваны бороться с эффектом алиасинга, создавая более гладкие края.
Сглаживание MSAA (от англ. «MultiSample Anti-Aliasing») — это метод сглаживания, заимствующий концепции SSAA, но при этом реализующий гораздо более эффективный подход в сглаживании зазубренных краев объекта. При мультисемплинге увеличивается число дискретных выборок на каждый пиксель, но только для краев объекта.
Сглаживание SSAA (от англ. «Super Sample Anti-Aliasing») — это один из первых методов сглаживания, который для рендеринга сцены временно использует рендербуфер с гораздо более высоким разрешением. Затем, когда вся сцена будет визуализирована, разрешение уменьшается до нормального. Обладает серьезным недостатком в виде просадки по производительности, так как приходится рисовать намного больше фрагментов, чем обычно.
Сила излучения (или «энергетическая сила света») — это величина потока излучения, распространяющегося от источника излучения, внутри малого телесного угла.
Скайбокс (англ. «skybox») — это (большой) куб, который охватывает всю сцену и содержит 6 изображений окружения, создавая у игрока иллюзию, что окружающая среда, в которой находится этот куб, имеет гораздо большие размеры, нежели на самом деле. Некоторые примеры скайбоксов, используемых в видеоиграх: изображения гор, облаков или звездного ночного неба.
Скаляр — это самое обычное математическое число, которое имеет только свое численное значение (в отличии от вектора, скаляр не имеет направления).
Скалярное умножение/произведение — это математическая операция умножения двух векторов, возвращающая в результате скаляр (число). Очень часто используется для определения параллельности/перпендикулярности векторов.
Сэмплер — это тип данных (объект) в языке GLSL, который выполняет операцию сэмплирования текстуры.
Сэмплирование — это получение цвета текстуры на основе её параметров (например, масштаба) с использованием текстурных координат.
Т
Тангаж (англ. «pitch») — это угловое движение объекта относительно главной поперечной оси инерции (величина того, насколько мы смотрим вверх или вниз).
Тексель (англ. «texel») — текстурный пиксель.
Текстура — это особый тип изображения, используемый в шейдерах и обычно накладываемый на объекты, создающий иллюзию чрезвычайно детализированного объекта.
Текстурные юниты — позволяют использовать несколько текстур в одной шейдерной программе, связывая несколько текстур, каждая из которых относится к другому текстурному блоку.
Телесный угол — это часть пространства, которая является объединением всех лучей, выходящих из данной точки (вершины угла) и пересекающих некоторую поверхность (которая называется поверхностью, стягивающей данный телесный угол). Телесный угол можно представить как направление с объемом.
Теория микрограней — является одним из столпов PBR-рендеринга, смысл которой состоит в том, что любая поверхность в микроскопическом масштабе может быть описана крошечными, идеально отражающими свет зеркалами, называемыми микрогранями. В зависимости от шероховатости поверхности, ориентация этих крошечных зеркал может сильно отличаться — чем поверхность более шероховатая, тем более хаотично будет ориентирована каждая микрогрань.
Тональная компрессия — это процесс преобразования (без существенных потерь в детализации) HDR-значений цвета обратно в стандартный диапазон [0.0; 1.0]
(известный как низкий динамический диапазон, часто сопровождаемый определенным стилистическим цветовым балансом).
Точечный свет — это источник света с конкретно заданным местоположением, испускающий лучи, которые имеют тенденцию ослабевать с увеличением пройденного расстояния. Размерами самого источника можно пренебречь по сравнению с расстоянием до него.
Точка выборки (или «сэмпл», от англ. «sample») — это точка, находящаяся внутри каждого пикселя экрана, из которой происходит выборка цвета для определения результирующего цвета пикселя.
Трансляция — это один из видов трансформации объекта (например, вектора) заключающийся в его параллельном переносе вдоль заданного направления из одной точки пространства в другую.
Трафарет (или «значения трафарета») — это информация о фрагментах, использующаяся во время растеризации при проведении теста трафарета для определения того, какие фрагменты будут отображены на экране, а какие — нет.
У
Углы Эйлера — определяют рыскание, тангаж и крен, которые позволяют нам сформировать любой 3D-вектор направления из этих 3 значений.
Уравнение отражения — это специализированная версия уравнения рендеринга. Уравнение отражения вычисляет сумму отраженного (или исходящего) излучения некоторой заданной точки в направлении, которое является исходящим направлением к зрителю.
Уравнение Френеля — описывает отношение отраженного света к преломленному в зависимости от угла, под которым мы смотрим на поверхность.
Ф
Физически корректный рендеринг (сокр. «PBR» от англ. «Physically Based Rendering») — это набор принципов (или скорее даже — целая теория) рендеринга, в той или иной мере соответствующих физическим законам природы. При PBR-рендеринге для имитации правильного освещения используются специальные материалы поверхностей объектов, созданные на основе реальных физических параметров.
Фильтрация текстуры — определяет режим того, как OpenGL должен сэмплировать текстуру, когда на выбор есть несколько текстурных пикселей. Используется при увеличении масштаба текстуры.
Фонарик (англ. «flashlight») — это прожектор, берущий свое начало из точки, в которой находится зритель.
Фоновое затенение (сокр. «AO» от англ. «Ambient Occlusion») — это метод, имитирующий непрямое освещение путем затемнения складок, отверстий и поверхностей, расположенных близко друг к другу.
Фотометрия — это совокупность методов измерения электромагнитного излучения, в том числе видимого света.
Фрагмент — это все данные, необходимые OpenGL для визуализации одного пикселя.
Фрагментный шейдер — это программа, которая используется для вычисления выходного цвета пикселей или фрагментов и никак не влияет на координаты вершины. Является предпоследним этапом графического конвейера.
Фреймбуфер (англ. «framebuffer») — это объект, являющийся сочетанием нескольких буферов экрана (цветового, глубины, трафарета) и хранящийся в памяти графического процессора. Используется для кратковременного хранения одного или нескольких кадров в цифровом виде перед отправкой на вывод. Может быть использован для выполнения над кадром различных предварительных операций.
Функция нормального распределения (сокр. «NDF» от англ. «Normalized Determinant Function») — это функция, используемая для статистической аппроксимации относительной площади поверхности микрограней, в точности ориентированных вдоль срединного вектора. Существует множество различных NDF, которые приближают общую ориентацию микрограней с учетом некоторого параметра шероховатости материала поверхности.
Ц
Цветовой вектор — это вектор, описывающий большинство цветов реального мира с помощью комбинации красного, зеленого и синего компонентов (сокр. «RGB» от англ. «Red, Green, Blue»). Цвет объекта — это отраженные компоненты цвета, которые объект не поглотил.
Ш
Шейдер — это программа, которая работает на видеокарте.
Э
Эффект бандинга — это графический артефакт в виде некоторой полосатости/сегментации изображения.
Эффект параллакса — это изменение видимого положения объекта относительно удаленного фона в зависимости от положения наблюдателя.
Эффект «Питера Пэна» — это графический артефакт, при котором объекты кажутся слегка отделенными от своих теней. Назван по имени сказочного персонажа, который потерял свою тень.
Эффект «теневых угрей» — это графический артефакт, возникающий при использовании карт теней, при котором отбрасываемая объектом тень отображается в виде черных чередующихся линий.