opengl — изменение курсора в игре на C ++

В настоящее время я создаю 2D-игру, используя C ++ и OpenGL. Мне было интересно, может ли кто-нибудь объяснить лучший способ изменить текущий курсор с помощью значка мыши. Я создаю игру со стрельбой сверху вниз и поэтому хочу, чтобы вместо этого курсор отображался в виде перекрестия.

1

Решение

Вы можете использовать свою специфичную для ОС функцию для ручного изменения значка указателя мыши (и «горячей точки» этого значка), или вы можете использовать специфичные для ОС функции для скрытия указателя мыши и ручного рисования собственного изображения с помощью последнее событие перемещения мыши, которое получило ваше приложение.

В качестве альтернативы, вместо использования специфичных для ОС функций, вы можете использовать кроссплатформенный API, который включает в себя такие функции (SDL, SFML, Qt и многие другие).

OpenGL не имеет никаких функций, которые конкретно работают с указателями мыши — это было бы интерфейсом оконного API, а не 3D-графикой. OpenGL только занимается рисованием графики.

Если вы используете GLUT (который не является «OpenGL», а является дополнительной библиотекой), вы можете вызвать:

glutSetCursor(GLUT_CURSOR_NONE);
4

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector