Простое в сложном

  • Автор темы gozer
  • Дата начала
Статус
Закрыто для дальнейших ответов.
G

gozer

Гость
#1
Я писал раньше под directX и такую вещь как замену курсора мыши картинкой, делал следующим образом:
1. прячу курсор
2. с использование GetCursorPos опр координаты курсора
3. присваевал выводимому изображению эти координаты, и оно заменяла мне указатель манипулятора.
Вчера я решил полабать на OpenGl и обнаружил, что так не катит (и даже не гипотенуза).
Подскажите как сделать нечто подобное, хотябы на примере с рисованным опримитивом (точкой), а лучше картинкой, ведь нулевые координаты всередини, а на кроя уходит значение "1".

Зарание благодарен, каждому ответившему....
 
Z

Zakus

Гость
#2
Код:
КоординатаКурсораВOGLСистеме.Х := крайняяЛеваяВерхняяТочкаOGLОкна.Х + ( 2 / ШиринаОкна ) * КоординатаКурсораПривычнойФормы.Х;

КоординатаКурсораВOGLСистеме.Y := крайняяЛеваяВерхняяТочкаOGLОкна.Y + ( 2 / ВысотаОкна ) * КоординатаКурсораПривычнойФормы.Y;

вроде что то такое, левую верхнюю я не помню... точно... но вроде она -1,1 или нет?)
 
G

gozer

Гость
#3
А в OpenGL разве не предусмотрино ещё одна система координат для построения поверх всего двумерного пространства. Например в Direct X, можно использовать 2-е системы координат трёхмерную и двумерную.
Просто расчёты в частности с делением до добра не доводят.
 
Статус
Закрыто для дальнейших ответов.