Вопросы с тегом «matrix»

Двумерный массив чисел, символов или выражений, упорядоченный по строкам и столбцам. В каждой строке должно быть одинаковое количество столбцов. Сами числа, символы или выражения называются элементами или записями.

87
Почему мы перемещаем мир вместо камеры?

Я слышал, что в игре OpenGL мы делаем так, чтобы игрок не двигался, а перемещал весь мир. Например, вот выдержка из этого урока: OpenGL View matrix В реальной жизни вы привыкли перемещать камеру, чтобы изменить вид определенной сцены, в OpenGL все наоборот. Камера в OpenGL не может двигаться и...

62
Каков правильный порядок умножения масштабных, вращательных и переводных матриц для правильной мировой матрицы?

Предположим, что DirectX является платформой, если это важно. (Уверен, это не так) Предполагая, что у меня есть правильная шкала, матрица вращения и перевода, в каком порядке я умножаю их, чтобы получить правильную матрицу мира и почему? Под «правильным» я подразумеваю «я мог бы выбросить их прямо...

21
Порядок умножения матрицы преобразования

Я испытываю трудности, пытаясь выяснить правильный порядок умножения для окончательной матрицы преобразования. Я всегда получаю странное движение или искаженную геометрию. Моя текущая модель объясняется ниже: Для одного узла мой порядок умножения: L = S * R * T где L = матрица локального...

19
Что представляет собой матрица?

Я недавно начал изучать OpenGL, и у меня возникают проблемы с визуализацией матриц и их роли в компьютерной графике. Учитывая шаблон матрицы 4x4, как это: Я бы предположил, что каждая подобная матрица - это координаты вершины в мировом пространстве. И несколько из них вместе взятые и затененные...

15
Как вращать объект вокруг мировых осей?

У меня есть Vector3, который имеет угол Эйлера для каждой оси. Обычно, когда я хочу создать матрицу вращения, я буду использовать функции, такие как D3DXMatrixRotationX, передавая соответствующий угол из моего вектора вращения выше, и умножать матрицы (ZXY), чтобы создать общую матрицу вращения,...

15
Как я могу вращаться вокруг произвольной точки в 3D (вместо начала координат)?

У меня есть некоторые модели, которые я хочу вращать, используя кватернионы обычным способом, за исключением того, что вместо поворота вокруг источника я хочу, чтобы он был слегка смещен. Я знаю, что в трехмерном пространстве вы не говорите, что вращаетесь вокруг точки; Вы говорите, что вращаетесь...

14
Математические темы для программирования 3D-графики [закрыто]

Закрыто . Этот вопрос должен быть более сфокусированным . В настоящее время он не принимает ответы. Закрыто 4 года назад . Locked . Этот вопрос и его ответы заблокированы, потому что вопрос не по теме, но имеет историческое значение. В настоящее время он не принимает новые ответы или...

14
Как я могу обратить эффект матрицы преобразования?

Недавно я работал над игрой с использованием OpenGL и C ++ через GLFW. В игре у меня есть дирижабль с установленной на нем башней. Дирижабль движется в мировых космических координатах, и турель «следует» за ним. Башня имеет свое собственное координатное пространство для направления взгляда / цели....

14
Есть ли общее слово, которое охватывает обработку положения, вращения и масштаба вместе?

Я ищу имя для своего класса, которое управляет матрицами 4x4, которые обрабатывают положение, вращение и масштаб. Есть ли общее слово, которое охватывает все три? (Я разбиваю математику по математике на собственный файл /...

12
Изометрическая карта в шахматном порядке: вычисление координат карты для точки на экране

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

12
Камера для 2.5D Game

Я надеюсь, что кто-то может объяснить это мне, как будто мне 5 лет, потому что я боролся с этим часами и просто не мог понять, что я делаю неправильно. Я написал Cameraкласс для моей 2.5D игры. Намерение состоит в том, чтобы поддерживать мир и экранные пространства следующим образом: Камера - это...

12
Зачем нам нужна четвертая координата для деления на z?

Я прочитал ответ здесь: Что делает видеокарта с четвертым элементом вектора в качестве конечной позиции? «Четвертый компонент - это хитрость для отслеживания перспективного проецирования. Когда вы делаете перспективное проецирование, вы хотите разделить на z: x '= x / z, y' = y / z, но это не та...

12
Повернуть объект вокруг неподвижной оси

Я пытаюсь позволить пользователю моего приложения вращать трехмерный объект, нарисованный в центре экрана, перетаскивая палец на экране. Горизонтальное движение на экране означает вращение вокруг фиксированной оси Y, а вертикальное движение означает вращение вокруг оси X. У меня проблема в том, что...

11
Как получить перевод из матрицы просмотра

Как я могу получить положение камеры в мировом пространстве из матрицы вида? Единственные ответы, которые я видел на этот вопрос, предполагают, что перевод находится в последней строке / столбце, но это не сработает, поскольку матрица содержит [x (точка) вправо, y (точка) вверх, z (точка)...

11
Может ли кто-нибудь объяснить (причины) последствия использования colum vs row Major для умножения / объединения?

Я пытаюсь научиться создавать матрицы представлений и проекций и продолжаю сталкиваться с трудностями в моей реализации из-за путаницы в двух стандартах на матрицы. Я знаю, как умножить матрицу, и я вижу, что транспонирование перед умножением полностью изменило бы результат, поэтому необходимо...

11
Нисходящее проецирование воображаемой сетки 4D на экран

В качестве умственного упражнения я пытаюсь представить проекцию произвольной 4D-сетки на экран (2D). Я предполагаю, что один 4D треугольник будет по-прежнему состоять только из 3 точек, однако каждая из этих 3 точек будет определяться столбцом с 4 измерениями. Будет ли более разумным определить...

10
Экранное пространство в мировое пространство

Я пишу 2D-игру, в которой в моем игровом мире ось X движется слева направо, а ось Y - сверху вниз, а ось Z - вне экрана: Хотя мой игровой мир нисходящий, игра отображается с небольшим уклоном: Я работаю над проецированием из мирового пространства на пространство экрана и наоборот. У меня бывший...

10
Как вы можете извлечь ориентацию из матрицы преобразования?

У меня есть матрица преобразования 4x4 M, и я хочу выяснить форму сферы при преобразовании M. (Сфера находится в начале координат и имеет радиус 1.) Я знаю, что могу найти центр, просто умножив М на (0,0,0,1). Тем не менее, радиус становится проблемой, так как М может сдавливать и вращать сферу....

10
Как правильно спроецировать точку за камерой?

Я делаю 3D-игру, в которой я ставлю восклицательный знак над достопримечательностями. Чтобы узнать, где на 2D-экране я должен поместить свой маркер, я вручную проецирую 3D-точку, где должен быть маркер. Это выглядит так: Выглядит довольно хорошо Когда маркер находится за пределами экрана, я просто...