#xna
#xna
Вопрос:
Всем гало,
Как сделать так, чтобы камера вращалась вокруг вектора3.Ноль на определенном расстоянии (например, Земля вращается вокруг Солнца) И чтобы камера всегда смотрела на этот Вектор3.Ноль?
Пожалуйста, любезно ответьте, спасибо
Ответ №1:
Камера обычно передается эффектам в виде View
матрицы.
Вы можете создать матрицу «look at» с помощью Matrix.CreateLookAt
(MSDN).
Это принимает три аргумента: целевой и восходящий векторы должны быть довольно стандартными (предположительно, Vector3.Zero
и Vector3.Up
в вашем случае).
Теперь вам просто нужно положение самой камеры. И вы хотите, чтобы он вращался. Это будет что-то вроде этого:
Vector3.Transform(new Vector3(distance, 0, 0), Matrix.CreateRotationY(angle));
Для получения дополнительной информации взгляните на методы, которые Matrix
предоставляет класс для создания матриц преобразования.