![]() |
|
Модераторы: Rickert |
![]()
|
|
| shtuceron |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 161 Регистрация: 17.2.2008 Репутация: нет Всего: нет |
Добрый день, можете исправить мою ошибкую.
Имеется трехгранник, необходимо смоделировать вращение вокруг его осей для различных углов, к примеру если я осуществляю поворот вокруг оси X меняются положения осей Y и Z, при вращении вокруг оси Y (уже измененной) меняются X и Z и т. д. Для осуществления этого алгоритма я ввожу матрицу и выделяю из неё три компоненты Up, Right, Backward, связанные с этим трехгранником и произвожу вращения вокруг этих осей. Matrix m = Matrix.Identity; m *= Matrix.CreateFromAxisAngle(m.Right, angle1); m *= Matrix.CreateFromAxisAngle(m.Up, angle2); m *= Matrix.CreateFromAxisAngle(m.Backward, angle3); + имеются визуализированные оси которые нужно поворачивать Пишу на XNA создаю basicEffect, передаю в него world * m * view * projection, angle1, angle2, angle3 меняются с помощью стандартных компонентов (numericUpDown). Так вот, если изменять углы последовательно все нормально, но если произвольно происходит каша (ощущение что вращение происходит относительно векторов (1,0,0), (0,1,0), (0,0,1)), в чем может быть проблема? |
|||
|
||||
![]()
|
| Правила форума "Программирование игр, графики и искуственного интеллекта" | |
|
|
НА ЗЛОБУ ДНЯ: Дорогие посетители, прошу обратить внимание что новые темы касающиеся новых вопросов создаются кнопкой "Новая тема" а не "Ответить"! Любые оффтопиковые вопросы, заданные в текущих тематических темах будут удалены а их авторы, при рецедиве, забанены.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rickert. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Программирование игр, графики и искусственного интеллекта | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |