2012-05-17 2 views
6

Я часто вижу слова «вектор» и «вершина» (множественные «вершины»), используемые в контексте 3D-программирования.В чем разница между вектором и вершиной?

Из того, что я могу сказать, оба они описывают точку в n-мерном пространстве. Рамка XNA, например, имеет классы Vector2, Vector3 и Vector4, но, похоже, не существует класса Vertex.

Какая разница между вектором и вершиной?

ответ

13

A 'vector' - математическая концепция; грубо говоря, он представляет собой смещение в некотором координатном пространстве. Вершина - это элемент некоторой 3D (или 2D, действительно) геометрии, которая обычно имеет положение и некоторые другие атрибуты (цвет, координаты текстуры и т. Д.).

Положение вершины (и, следовательно, иногда сама вершина) может быть представлено вектором, если предположить, что вектор является смещением от начала координат системы координат. Иногда люди называют это представление вектора «вектором положения».

Таким образом, разница в том, что векторы могут использоваться для описания (полностью или частично) вершины.

+5

Важная часть здесь отметить, что вектор содержит только позиционные данные, а вершина может (и обычно) содержать больше информации, чем только ее положение. – CodeHxr

+0

В XNA и, возможно, в других трехмерных графических фреймах существует класс Vector4. Поскольку люди все еще могут наблюдать только 3 пространственных измерения, тогда класс Vector4 используется для вершин? Если да, то почему это называется вектором? – lesderid

+3

@lesderid Более формально векторы являются элементом векторного пространства и могут иметь n координат. Хотя верно, что 1, 2 и 3-мерные векторы имеют удобные геометрические отношения к 3D-пространству, которое люди могут визуализировать, что само по себе не является внутренним свойством векторов. Тем не менее, 4-компонентные векторы обычно используются как атрибуты вершин (обычно для атрибутов позиции или цвета). Они полезны для позиции, потому что они позволяют матричные преобразования 4x4, и они полезны для цветов только потому, что они могут хранить четыре компонента (RGBA). –

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