Модераторы: Rickert
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Получение координат мыши в координатах OpenGL 
:(
    Опции темы
st063
Дата 8.8.2007, 19:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 7.8.2007

Репутация: нет
Всего: нет



Доброго всем времени суток!

Изучаю OpenGL я совсем немного, и столкнулся со следующей проблемой. Программирую на Visual c++ 6.0. Допустим у меня есть работающее с   OpenGL Win32 application.  У меня есть некая плоскость обтянутая текстурой, которую я могу вращать с помощью клавиш. И в определенный момент пользователь щелкает по плоскости, например чтобы перенести её в другое место. И проблема такая, как определить шёлкнул ли пользователь по плоскости или нет? 

Я предполагаю решение этой проблему через получение координат мыши. Получить их не проблема, но ведь OpenGL работает со своими координатами, а я могу получить координаты только относительно окна в пикселях. И как из одного получить другое не представляю!

За любою информацию по теме буду очень благодарен!

Заранее спасибо! 
PM MAIL   Вверх
Solomon
Дата 8.8.2007, 19:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 471
Регистрация: 23.1.2006
Где: Украина Киев

Репутация: нет
Всего: 2



ну переведи координаты оконные в координаты OpenGL...
У тебя все это в 3D или 2D?

Добавлено через 1 минуту и 1 секунду
ксти тему не в том разделе создал.. надо было тут http://forum.vingrad.ru/forum/c-c++multime...GL-DirectX.html


--------------------
Если не идти до конца к поставленным целям и не пытатся их достигнуть, каким бы тяжелым не казался путь, то лучше и не ставь их перед собой, но тот кто не ставит перед собой труднодоступные цели, никогда не ощутит эйфорию настоящей победы... победы над миром...
Соломон 2008
PM MAIL ICQ GTalk YIM   Вверх
st063
Дата 8.8.2007, 19:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 7.8.2007

Репутация: нет
Всего: нет



3D, проблема в, том что плоскость может же вращается по трём осям, и надо, что бы как пользователь её не повернул, порограмма определяла, что пользователь кликнул именно по плоскости. Пытался сам написать функцию перевода координат, но ничего путного не вышло. Не подскажите ли нет ли какой-нибудь стандартной функции для этих целей?

 
PM MAIL   Вверх
Solomon
Дата 8.8.2007, 19:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 471
Регистрация: 23.1.2006
Где: Украина Киев

Репутация: нет
Всего: 2



стандартной нет... в опенЖЛ вообще нет функций для работы с мышей или клавиатурой... млин там как то через нормали надо делать... дома посмотрю если ни кто седня не огтветит завтра думаю напишу что и как


--------------------
Если не идти до конца к поставленным целям и не пытатся их достигнуть, каким бы тяжелым не казался путь, то лучше и не ставь их перед собой, но тот кто не ставит перед собой труднодоступные цели, никогда не ощутит эйфорию настоящей победы... победы над миром...
Соломон 2008
PM MAIL ICQ GTalk YIM   Вверх
st063
Дата 8.8.2007, 21:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 7.8.2007

Репутация: нет
Всего: нет



Как я понимаю, при создании окна начало координат помещается в центр? Если это так, то тогда проблему я кажется решил(написал алгоритм на бумажке). Завтра, а может ещё и сегодня, его потестю. Но если у кого-нибудь есть какие-нибудь мысли, буду премного благодарен!





















PM MAIL   Вверх
Retro
Дата 8.8.2007, 22:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Диалектик
***


Профиль
Группа: Участник Клуба
Сообщений: 1934
Регистрация: 28.6.2005
Где: Киев

Репутация: нет
Всего: 117



Насколько я помню, координатную сетку в OpenGL можно задать под себя при инициализации.
PM MAIL   Вверх
st063
Дата 9.8.2007, 15:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 7.8.2007

Репутация: нет
Всего: нет



А как начало координат поместить в нужную точку?
PM MAIL   Вверх
ShellRaiser
Дата 9.8.2007, 16:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


еще чуть и закоммичу
*


Профиль
Группа: Участник
Сообщений: 156
Регистрация: 20.7.2007
Где: Белaрусь, Гродно

Репутация: 1
Всего: 1



http://www.ultimategameprogramming.com/dem...enGL&page=5
Пример Selection думаю тебе поможет...
PM MAIL ICQ Skype   Вверх
st063
Дата 9.8.2007, 16:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 7.8.2007

Репутация: нет
Всего: нет



Большое спасибо! Пример очень нужный и как раз то, что надо! Всем большое спасибо за помощь по этому вопросу!


PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Программирование игр, графики и искуственного интеллекта"
Rickert

НА ЗЛОБУ ДНЯ: Дорогие посетители, прошу обратить внимание что новые темы касающиеся новых вопросов создаются кнопкой "Новая тема" а не "Ответить"! Любые оффтопиковые вопросы, заданные в текущих тематических темах будут удалены а их авторы, при рецедиве, забанены.

  • Литературу, связанную с программированием графики, обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы связанные с программированием графики и мультимедии на языках С++ и Delphi
  • Вопросы по реализации алгоритмов рассматриваются здесь

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rickert.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Программирование игр, графики и искусственного интеллекта | Следующая тема »


 




[ Время генерации скрипта: 0.0475 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.