Вершина (компьютерная графика)

Вершина (англ. vertex, мн. ч. vertices) в компьютерной графике — это структура данных, которая описывает определённые атрибуты, например, положение точки в 2D или 3D пространстве. Графические объекты состоят из массивов плоских поверхностей (как правило, треугольников — полигонов), и вершины определяют расположение, углы и другие атрибуты поверхностей.

Атрибуты могут представлять что угодно, например, температуру, скорость или направление.

Приложение к объектной модели

править

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

Атрибуты вершин

править

Большинство атрибутов вершины представляют собой векторы в пространстве. Вектор может быть одномерным (х), двумерным (х, y) или трёхмерным (х, у, z) и может содержать четвёртую однородную координату (w).

Ниже приводится таблица встроенных атрибутов вершин в стандарте OpenGL.

Атрибуты OpenGL[1]
Имя GL атрибута attribute defined (data value size)
gl_Vertex Position (vec4)
gl_Normal Normal (vec4)
gl_Color Primary color of vertex (vec4)
gl_MultiTexCoord0 Texture coordinate of texture unit 0 (vec4)
gl_MultiTexCoord1 Texture coordinate of texture unit 1 (vec4)
gl_MultiTexCoord2 Texture coordinate of texture unit 2 (vec4)
gl_MultiTexCoord3 Texture coordinate of texture unit 3 (vec4)
gl_MultiTexCoord4 Texture coordinate of texture unit 4 (vec4)
gl_MultiTexCoord5 Texture coordinate of texture unit 5 (vec4)
gl_MultiTexCoord6 Texture coordinate of texture unit 6 (vec4)
gl_MultiTexCoord7 Texture coordinate of texture unit 7 (vec4)
gl_FogCoord Fog Coord (float)

Ссылки

править
  1. Christen, Martin Clockworkcoders Tutorials: Vertex Attributes. Khronos Group. Дата обращения: 26 января 2009. Архивировано 12 апреля 2019 года.