Форум программистов, компьютерный форум CyberForum.ru

Поворот куба сначала вокруг оси y с.к. экрана потом вокруг оси x с.к. экрана - Android

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.67
urrast
0 / 0 / 0
Регистрация: 28.05.2011
Сообщений: 9
18.02.2014, 01:06     Поворот куба сначала вокруг оси y с.к. экрана потом вокруг оси x с.к. экрана #1
Предыстория:
Я пишу 3D игру и там соответственно нужно производить поворот тела в пространстве. нужно делать 2 поворота по горизонтали и по вертикали. Вот так должно быть , а сейчас у меня происходит вот так т.е. вращение происходит по углам Эйлера, а не так как я хочу.
Это происходит потому что я произвожу 2 поворота

Код
Matrix.rotateM(mMVPMatrix, 0, yAngle, 0, 1, 0);
Matrix.rotateM(mMVPMatrix, 0, xAngle, 1, 0, 0);
Это код на java opengl es 2.0 . суть в том что я сначала поворачиваю на угол yAngle вокруг оси {0 1 0} а потом вокруг на угол xAngle вокруг оси { 1 0 0}


Вопрос как сделать так чтобы оба поворота были вокруг осей неподвижной системы координат экрана, а не так что один вокруг неподвижной а второй вокруг с.к. объекта ?
Изображения
  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.02.2014, 01:06     Поворот куба сначала вокруг оси y с.к. экрана потом вокруг оси x с.к. экрана
Посмотрите здесь:

Поворот Экрана Android
Кнопки с картинкой и поворот экрана Android
Разрешение экрана Android
При повороте экрана, сохранить 3 объекта(фрагменты) и потом восстановить их Android
Android Поворот экрана. Сохранение данных, но смена размеров компонентов
Android Как отследить поворот экрана
Текст вокруг картинки Android
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
urrast
0 / 0 / 0
Регистрация: 28.05.2011
Сообщений: 9
18.02.2014, 01:07  [ТС]     Поворот куба сначала вокруг оси y с.к. экрана потом вокруг оси x с.к. экрана #2
Мне нужно чтобы вращалось так как на первой картинке а у меня сейчас вращение как на второй
Tester64
395 / 356 / 43
Регистрация: 22.05.2013
Сообщений: 2,488
18.02.2014, 02:14     Поворот куба сначала вокруг оси y с.к. экрана потом вокруг оси x с.к. экрана #3
Пробовали поменять ПОРЯДОК поворотов?
urrast
0 / 0 / 0
Регистрация: 28.05.2011
Сообщений: 9
18.02.2014, 13:55  [ТС]     Поворот куба сначала вокруг оси y с.к. экрана потом вокруг оси x с.к. экрана #4
да пробовал, ситуация аналогичная, при любом порядке первый угол вертится как мне надо второй в системе координат куба.
EDIsaev
4 / 4 / 0
Регистрация: 27.03.2012
Сообщений: 131
18.02.2014, 14:43     Поворот куба сначала вокруг оси y с.к. экрана потом вокруг оси x с.к. экрана #5
Цитата Сообщение от urrast Посмотреть сообщение
а у меня сейчас вращение как на второй
так правильно, на второй как раз правильное вращение, так и должно быть
urrast
0 / 0 / 0
Регистрация: 28.05.2011
Сообщений: 9
18.02.2014, 14:48  [ТС]     Поворот куба сначала вокруг оси y с.к. экрана потом вокруг оси x с.к. экрана #6
я понимаю, что оно правильное с точки зрения вращения по углам эйлера , но мне нужно другое вращение
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.02.2014, 14:55     Поворот куба сначала вокруг оси y с.к. экрана потом вокруг оси x с.к. экрана
Еще ссылки по теме:

Запретить поворот экрана на телефонах и позволить его на планшетах Android
Android Ребрендинг оси андроид (Android OS)
Как при повороте экрана показывать видео дальше, а не сначала Android
Android Запретить поворот экрана
Android Поворот экрана и пересоздание обьектов. Как делают матёрые разработчики?

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
EDIsaev
4 / 4 / 0
Регистрация: 27.03.2012
Сообщений: 131
18.02.2014, 14:55     Поворот куба сначала вокруг оси y с.к. экрана потом вокруг оси x с.к. экрана #7
меняй оси... вот тут крутили иначе посмотри: http://habrahabr.ru/post/173131/
и чуть теории: http://4pda.ru/forum/index.php?s=&sh...ost&p=19501005
Yandex
Объявления
18.02.2014, 14:55     Поворот куба сначала вокруг оси y с.к. экрана потом вокруг оси x с.к. экрана
Ответ Создать тему
Опции темы

Текущее время: 17:59. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru