Системы координат в 3D-графике
В 3D-графике и математике ориентация системы координат определяет, как оси X, Y и Z располагаются относительно друг друга. Это влияет на результаты векторных произведений и направление вращений. Существуют две основные системы:
Правая тройка векторов (Right-Handed System)
Левая тройка векторов (Left-Handed System)
Правая система координат (Right-Handed System / Правая тройка)

Представьте свою правую руку:
Большой палец указывает вдоль положительного направления оси X.
Указательный палец — вдоль положительного направления оси Y.
Средний палец, согнутый перпендикулярно первым двум, укажет положительное направление оси Z.
В этой системе, если смотреть против направления оси Z, положительное вращение вокруг оси Z происходит против часовой стрелки. Это стандарт для многих математических описаний, а также для OpenGL и Blender.
Левая система координат (Left-Handed System / Левая тройка)

Представьте свою левую руку:
Большой палец указывает вдоль положительного направления оси X.
Указательный палец — вдоль положительного направления оси Y.
Средний палец, согнутый перпендикулярно первым двум, укажет положительное направление оси Z.
В этой системе, если смотреть против направления оси Z, положительное вращение вокруг оси Z происходит по часовой стрелке. Эта система используется, например, в DirectX и Unreal Engine.
📖 Словарь терминов
Система координат (Coordinate System)
Набор из точки отсчета (начала координат) и базисных векторов (осей), определяющих положение точек в пространстве.
Правосторонняя система координат (Right-Handed Coordinate System / RHS)
Система, где оси X, Y, Z ориентированы по правилу правой руки.
Левосторонняя система координат (Left-Handed Coordinate System / LHS)
Система, где оси X, Y, Z ориентированы по правилу левой руки.
Оси координат (Coordinate Axes)
Направляющие линии (X, Y, Z), используемые для определения положения в пространстве.
Начало координат (Origin)
Точка пересечения осей координат (0,0,0).
Правило правой руки (Right-Hand Rule)
Мнемоническое правило для определения ориентации осей в правой системе координат или направления векторного произведения.
Правило левой руки (Left-Hand Rule)
Мнемоническое правило для определения ориентации осей в левой системе координат.
Хиральность (Chirality) / Ориентация (Handedness)
Свойство системы координат быть правой или левой. Системы с разной хиральностью являются зеркальными отражениями друг друга.
Векторное произведение (Cross Product)
Операция над двумя векторами в трехмерном пространстве, результатом которой является вектор, перпендикулярный обоим исходным векторам. Направление результирующего вектора зависит от "handedness" системы координат:
В RHS: a×b направлен по правилу правой руки (от a к b).
В LHS: a×b направлен по правилу левой руки (от a к b), или, что то же самое, направление будет противоположным тому, что получилось бы в RHS для тех же векторов.
Направление вращения (Rotation Direction)
Положительное вращение (Positive Rotation): В RHS обычно определяется как вращение против часовой стрелки, если смотреть против направления оси вращения. В LHS — по часовой стрелке.
Отрицательное вращение (Negative Rotation): Вращение в противоположную сторону от положительного.
По часовой стрелке (Clockwise / CW)
Против часовой стрелки (Counter-Clockwise / CCW)
Пространства в 3D графике (Spaces in 3D Graphics)
Мировое пространство (World Space): Общая система координат для всех объектов в сцене. Может быть как RHS, так и LHS в зависимости от движка/API.
Локальное пространство / Пространство объекта (Local Space / Object Space): Система координат относительно самого объекта.
Пространство вида / Пространство камеры (View Space / Camera Space): Система координат относительно камеры. Часто именно здесь может происходить переход между RHS и LHS (например, камера в OpenGL (RHS) смотрит вдоль отрицательной оси Z, а в DirectX (LHS) – вдоль положительной Z).
Z-fighting
Артефакт рендеринга, когда две или более поверхности находятся очень близко друг к другу вдоль оси Z, и из-за ограничений точности буфера глубины (Z-buffer) они "борются" за то, какая из них будет отображена. Направление оси Z (вперед или назад от наблюдателя) определяется хиральностью системы.
Last updated
Was this helpful?