Size: a a a

pro.graphon (and gamedev)

2020 June 25

VK

Vitaliy ◀️TriΔng3l▶️... in pro.graphon (and gamedev)
https://people.gnome.org/~mathieu/libart/art-affine-matrix.png Shear, только не знаю, тут y* = ax + y получается или x* = x + ay
источник

VK

Vitaliy ◀️TriΔng3l▶️... in pro.graphon (and gamedev)
но если вот так, слева матрица, справа вектор-столбец
источник

VK

Vitaliy ◀️TriΔng3l▶️... in pro.graphon (and gamedev)
то Y это dot второй строки и вектора
источник

P🍣

Pavel 🍣 in pro.graphon (and gamedev)
похоже мне нужно добавить в последную строку на 1 и 2 место что то, но тогда я буду делать translate сцены линейно, чем дальше, тем больше транслейт
источник

VK

Vitaliy ◀️TriΔng3l▶️... in pro.graphon (and gamedev)
Y = r1c0 * x + r1c1 * y + r1c2 * z
источник

VK

Vitaliy ◀️TriΔng3l▶️... in pro.graphon (and gamedev)
Значит, чтобы было Y = y + az, то надо:
1 0 0
0 1 a
0 0 1
источник

P🍣

Pavel 🍣 in pro.graphon (and gamedev)
в последний столбец наверно я не правильно сказал, это только в w идет и нужно для корректной интерполяции тестур
источник

VK

Vitaliy ◀️TriΔng3l▶️... in pro.graphon (and gamedev)
Pavel 🍣
в последний столбец наверно я не правильно сказал, это только в w идет и нужно для корректной интерполяции тестур
Так ты же сказал, что в 3D, а не в однородных координатах
источник

P🍣

Pavel 🍣 in pro.graphon (and gamedev)
Vitaliy ◀️TriΔng3l▶️ Kuzmin
Значит, чтобы было Y = y + az, то надо:
1 0 0
0 1 a
0 0 1
а да, точняк, это верно
источник

VK

Vitaliy ◀️TriΔng3l▶️... in pro.graphon (and gamedev)
(x, y, z, 1) — точка (типа позиции), поскольку к ней должно применяться смещение из четвёртого столбца, (x, y, z, 0) — направление (нормаль, касательная, например), смещение умножается на 0
источник

VK

Vitaliy ◀️TriΔng3l▶️... in pro.graphon (and gamedev)
Vitaliy ◀️TriΔng3l▶️ Kuzmin
Значит, чтобы было Y = y + az, то надо:
1 0 0
0 1 a
0 0 1
Если у тебя вектор слева как строка, это надо транспонировать
источник

P🍣

Pavel 🍣 in pro.graphon (and gamedev)
Vitaliy ◀️TriΔng3l▶️ Kuzmin
(x, y, z, 1) — точка (типа позиции), поскольку к ней должно применяться смещение из четвёртого столбца, (x, y, z, 0) — направление (нормаль, касательная, например), смещение умножается на 0
спасиб, я понял как решить, мне нужно еще что бы в центре кадра плоскость стояла, а все остальное смещалось
источник

VK

Vitaliy ◀️TriΔng3l▶️... in pro.graphon (and gamedev)
Pavel 🍣
спасиб, я понял как решить, мне нужно еще что бы в центре кадра плоскость стояла, а все остальное смещалось
Смещай её вместе с глазами
источник

P🍣

Pavel 🍣 in pro.graphon (and gamedev)
Похоже что они просто skew делают тут? https://youtu.be/UkM_MgI35_s?t=110
источник

P🍣

Pavel 🍣 in pro.graphon (and gamedev)
1 0 -x0 xt
0 1 -y0 xt
0 0 1 0
0 0 0 1
похоже на что то подобное нужно домножить перспективную матрицу
источник

P🍣

Pavel 🍣 in pro.graphon (and gamedev)
похоже на хак все таки, сама картинка еще меняется из-за перспектинвных искажений экрана телефона
источник

AF

Aidar Fattakhov in pro.graphon (and gamedev)
Pavel 🍣
как создать skew матрицу в 3d?
Просто возьми базис который хочешь и впиши его в столбики
источник

AF

Aidar Fattakhov in pro.graphon (and gamedev)
В опенгл нужно транспонировать еще наверн
источник

P🍣

Pavel 🍣 in pro.graphon (and gamedev)
короче все что я делал с клип-плейном было не правильно)
источник

P🍣

Pavel 🍣 in pro.graphon (and gamedev)
Aidar Fattakhov
Просто возьми базис который хочешь и впиши его в столбики
я так начну произвольный фрустум вписывать в единичный куб👹
источник