PMG

Форумы по созданию игр
Текущее время: 18 апр 2024 20:09

Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 6 ] 
Автор Сообщение
 Заголовок сообщения: Ориентация обьекта в 3д
СообщениеДобавлено: 31 май 2006 15:07 
Не в сети
Любитель

Зарегистрирован: 01 мар 2006 00:28
Сообщения: 20
Откуда: Запорожье
Всем привет , ктото может рассказать как лучше представить ориентацию ( куда обьект будет направлен лицом) в системе локальных координат для обьекта в игре .Я вот думаю можно или взять одну точку ( в которую он всегда направлен ) и записать ее координаты в 3 д вектор ,или же в этот вектор записывать углы отклоненияя соответственно п оосям x y z .Подскажите пожалуйст.Если есть какие -нибудь исходники подскажите де скачать

_________________
Боже!Дай мне исходники всего мира


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 01 июн 2006 08:58 
Не в сети
Гуру
Аватара пользователя

Зарегистрирован: 03 авг 2004 10:37
Сообщения: 2694
Я пока делал так :
SVector4f rotv;
glRotatef(rotv.v[0],rotv.v[1],rotv.v[2],rotv.v[3]);

Как мне кажется вполне достаточно.

_________________
С уважением, Сергей


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 03 июн 2006 00:34 
Не в сети
Постоянный

Зарегистрирован: 06 май 2006 10:32
Сообщения: 59
Откуда: Ярославль
Я делаю так - представляю ориентацию объекта в виде двух векторов - фронт и верх. Если надо повернуть объект - вращаю векторы. По векторам строится матрица преобразования.
Не совсем оптимально, зато наглядно. И довольно часто для дальнейших вычислений требуются именно эти векторы - а они после поворота уже готовы к употреблению :)
В будущем, хочу завести в хозяйстве кватернионы.

_________________
С уважением.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 22 июн 2006 23:10 
Не в сети
Опытный
Аватара пользователя

Зарегистрирован: 29 апр 2006 21:28
Сообщения: 404
Цитата:
Я делаю так - представляю ориентацию объекта в виде двух векторов

Не лучше это делать в три вектора.
Цитата:
Для того чтобы однозначно задать положение и ориентацию трехмерного объекта в пространстве, необходимы три вектора. Первый вектор определяет положение объекта (или, по крайней мере, некоторой эталонной точки объекта). Второй вектор определяет направление, в котором обращен объект. Для чего же нужен третий вектор? На рис. 4-6 изображены три объекта, все они имеют одинаковую форму и обращены в одном направлении. Чем они отличаются друг от друга?

Отличие состоит в том, что все эти объекты повернуты на разный угол вокруг своей оси. Чтобы полностью задать ориентацию объекта, необходимо дополнительно определить направление, которое для объекта будет считаться верхним. На рис. 4-7 изображены верхние векторы для всех трех фигур.

Три вектора однозначно определяют позицию и ориентацию объекта.



_________________
С уважением,Блинов Андрей.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 06 июл 2006 18:14 
Не в сети
Любитель

Зарегистрирован: 21 ноя 2005 19:12
Сообщения: 12
Откуда: rv.ua
Достаточно двух векторов.
Третий вектор равен векторному произведению первых двух.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 08 июл 2007 15:07 
Не в сети
Любитель
Аватара пользователя

Зарегистрирован: 05 июл 2007 17:18
Сообщения: 12
Откуда: Минск, Республика Беларусь
Часто для этих целей используют кватернионы (http://www.gamedev.ru/users/wat/articles/quaternions)


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 6 ] 

Часовой пояс: UTC + 3 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB