Есть OpenGL программа (GLUT, freeGlut, OpenGlut использовать нельзя, не говоря о том что б перейти на OpenGL 2+, только то что предоставлено в папке GL в Windows SDK) для которой нужно организовать ввод.
Я в курсе что в OpenGL используется привычная с геометрии декартовая система координат (в этом случаи, для окна в ОС Windows ноль будет левый нижний угол), в отличии от принятой в Windows системы координат с нулём в верхнем левом углу.
По X согласие, разночтение лишь по Y, которое довольно просто разрешить для OpenGL окна
- Код: Выделить всё
case WM_MOUSEMOVE:
manager -> OnMouseMove((int)wParam, LOWORD(lParam), GetHeight() - HIWORD(lParam));
break;
Но что же происходит когда перейти в правый нижний угол?
В случаи с GDI как и ожидалось.
Но почему для OpenGL случая есть расхождения?
Что я упускаю?
Даже если допустить использование сторонней библиотеки freeGlut, ситуация с координатами не улучшится, единственно что цвета для OpenGL объектов можно будет задавать.
В приложенном иллюстрирующем примере
работа с цветом не показана, но откуда (в случаи OpenGL) вообще там взялся красный цвет?
Спасибо.