Мне нужен способ (в java), чтобы вычислить, в каком направлении моя камера будет двигаться вперед по осям x и z, в зависимости от направления, в котором смотрит моя камера (рыскание), а для y (вертикальная ось) - шага. Я делаю свой собственный игровой движок и свою камеру.
Когда все значения по умолчанию равны нулю, перемещение камеры правильно направляет все движения вдоль положительной оси z. Однако, когда я панорамирую камеру влево или вправо (тем самым изменяя рыскание), камера по-прежнему перемещается только вдоль оси z ... Итак, как мне рассчитать изменение направления по осям x, y и z?
Диапазон значений по рысканью: 0 (юг), 45 (юго-запад), 90 (запад), 135 (северо-запад), 180 (север), 225 (северо-восток), 270 (восток), 315 (юго-восток) и обратно на 360 (юг, то же, что и 0).
То, что я ищу с направлениями компаса (где '+' или '-' указывает изменение значения вдоль этой оси):
South = x, y, z+
SouthWest = x+, y, z+
West = x+, y, z
NorthWest = x+, y, z-
North = x, y, z-
NorthEast = x-, y, z-
East = x-, y, z
SouthEast = x-, y, z+
Диапазон значений высоты звука: 0,0 (средний), 100,0 (полностью вверх) и -100,0 (полностью вниз).
Если мне нужно опубликовать код, я могу, но это может быть сложно. Я надеюсь, что у меня есть какой-то смысл, чтобы кто-то мог мне помочь!