У меня небольшая проблема с переводом и вращением камеры в 3D-пространстве.В Direct3D9 камера определяется как положение, взгляд и ось вверх (как трехмерные векторы).Таким образом, я сохранил поворот и положение камеры, и, определяя камеру для нового кадра, я поворачивал вращающуюся ось вектора и вверх по оси и устанавливал положение.При переводе камеры я взял перевод, повернул его по повороту и перевел этим положение камеры и вектор наблюдения.Но через некоторое время вектор наблюдения и новый перевод не совпадают, то есть камера больше не движется вперед, когда вектор перевода является прямым кратным исходного вектора просмотра, который определяет вперед.Я не могу понять, почему это происходит - какие-либо предложения?