Я построил матрицу билбордов, используя приведенный ниже код:
XMFLOAT4X4 translationMatrix = XMFLOAT4X4();
translationMatrix._11 = right.x; translationMatrix._21 = up.x; translationMatrix._31 = look.x; translationMatrix._41 = worldposition.x;
translationMatrix._12 = right.y; translationMatrix._22 = up.y; translationMatrix._32 = look.y; translationMatrix._42 = worldposition.y;
translationMatrix._13 = right.z; translationMatrix._23 = up.z; translationMatrix._33 = look.z; translationMatrix._43 = worldposition.z;
translationMatrix._14 = 0; translationMatrix._24 = 0; translationMatrix._34 = 0; translationMatrix._44 = 1;
И это работает правильно, однако я хочу, чтобы рекламный щит был масштабируемым, как я могу добиться этого, поскольку матрица полностью векторная и, таким образом,не является масштабируемым по своей природе?
Попытка масштабирования с использованием XMMatrixScaleFromVector()
приводит к тому, что рекламный щит начинает двигаться, когда камера приближается к нему.
Любая помощь очень ценится.