Вот так я вычисляю вектор прямой видимости и вектор вверх.
ly = sin(inclination);
lx = cos(inclination)*sin(azimuth);
lz = cos(inclination)*cos(azimuth);
uy = sin(inclination + M_PI / 2.0);
ux = cos(inclination + M_PI / 2.0)*sin(azimuth + M_PI);
uz = cos(inclination + M_PI / 2.0)*cos(azimuth + M_PI);
Наклон - это угол вектора прямой видимости от плоскости xz, а азимут - угол в плоскости xz..
Это прекрасно работает, пока мой наклон не достигнет 225 градусов.В этот момент вращение происходит по какой-то причине.(Примечание. Под 225 градусами я имею в виду, что она прошла точку перевернутого положения)
Есть идеи, почему это так?
РЕДАКТИРОВАТЬ: Неважно, разобрался.Азимуту не нужно 180 градусов.наклон для вектора вверх.