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

Трансформация в разработке игр обычно относится к операциям линейной алгебры над точками, векторами и матрицами.

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

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

38
Я вращаю объект по двум осям, так почему же он продолжает вращаться вокруг третьей оси?

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

24
Использование кватернионов: что я могу с ними сделать? (без математики)

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

13
Движение зависит от частоты кадров, несмотря на использование Time.deltaTime

У меня есть следующий код для расчета перевода, необходимого для перемещения игрового объекта в Unity, который вызывается LateUpdate. Из того, что я понимаю, мое использование Time.deltaTimeдолжно сделать окончательную частоту кадров перевода независимой (пожалуйста, обратите внимание,...

12
Как решить проблему блокировки карданного подвеса с помощью накопительных матричных преобразований

Я читаю онлайн книгу Джейсона МакКессона «Обучение современному программированию в трехмерной графике». На данный момент я имею дело с проблемой блокировки карданного подвеса и с тем, как ее решить с помощью кватернионов. Однако прямо здесь, на странице Quaternions . Часть проблемы заключается в...

12
Как извлечь углы Эйлера из матрицы преобразования?

У меня есть простая реализация игрового движка сущности / компонента. Компонент Transform имеет методы для установки локального положения, локального вращения, глобального положения и глобального вращения. Если для преобразования устанавливается новая глобальная позиция, то локальная позиция также...

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

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

11
Специальный реляционный шейдер в GLSL

Я пытаюсь реализовать шейдер GLSL, который помогает понять специальное преобразование Лоренца. Давайте возьмем два ориентированных по оси инерциальных наблюдателя Oи O'. Наблюдатель O'движется с наблюдателем Oсо скоростью v=(v_x,0,0). Когда описывается в терминах O'координат, событие P' =...

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

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

9
Геометрические преобразования на CPU против GPU

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

9
Почему я не могу использовать оператор '> =' с Vector3s?

Я пытаюсь получить прямоугольник для перемещения между двумя позициями, которые я называю _positionAи _positionB. Оба имеют тип Vector3. Прямоугольник движется просто отлично. Однако, когда он достигает, _positionBон не движется в противоположном направлении, как это должно быть. Я вернулся в код,...

8
Как создать перетаскиваемый объект, который мешает на пути?

Я задаю еще один вопрос - перетаскивание мышью (я использую Unity с C #), но с менее частой конкретной деталью: наличие препятствий в середине пути, по которому происходит перетаскивание (3D-пространство, а не 2D) , Позволь мне объяснить. Предположим, у меня есть самолет, по которому я хочу...

8
Принудительно перезагрузить VS Soution Explorer при добавлении нового скрипта c # через Unity3d?

Когда я создаю C # script ( Create -> C# Script) через Unity3d или удаляю его из Unity3d- Visual Studioпоказывает мне окно с предупреждением. это раздражает. Есть ли способ заставить "ReloadAll" в обозревателе решений без...

8
Как Mikktspace работает для вычисления касательного пространства во время нормального отображения?

3D-индустрия все чаще принимает стандарт Mikktspace для расчета касательного пространства для нормального отображения и других эффектов, которые основаны на точном и последовательном вычислении касательного пространства от одного приложения к другому. Блендер, xNormal, Unity, Substance Painter и...